From 07c2fadbed66b26bef93cfc2221383640a434113 Mon Sep 17 00:00:00 2001 From: Yu Watanabe Date: Sat, 28 Jun 2025 23:03:44 +0900 Subject: [PATCH] Revert "conf-files: introduce CONF_FILES_CHASE_BASENAME flag" This reverts commit 49653adef3ff47c7bcd1098c763eb2a55297df15. The commit was merged without review, and has several issues. Let's revert the change now, and address the issue pointed out by the commit later in another way. --- src/basic/conf-files.c | 3 --- src/basic/conf-files.h | 5 ++--- src/test/test-conf-files.c | 32 -------------------------------- 3 files changed, 2 insertions(+), 38 deletions(-) diff --git a/src/basic/conf-files.c b/src/basic/conf-files.c index 48fabc0442..0f736202e5 100644 --- a/src/basic/conf-files.c +++ b/src/basic/conf-files.c @@ -164,9 +164,6 @@ static int files_add( if (!n) return log_oom_debug(); - if (FLAGS_SET(flags, CONF_FILES_CHASE_BASENAME)) - free_and_replace(p, resolved_path); - r = hashmap_ensure_put(files, &string_hash_ops_free_free, n, p); if (r < 0) { assert(r == -ENOMEM); diff --git a/src/basic/conf-files.h b/src/basic/conf-files.h index 67489316b7..710e74c959 100644 --- a/src/basic/conf-files.h +++ b/src/basic/conf-files.h @@ -8,9 +8,8 @@ typedef enum ConfFilesFlags { CONF_FILES_REGULAR = 1 << 1, CONF_FILES_DIRECTORY = 1 << 2, CONF_FILES_BASENAME = 1 << 3, - CONF_FILES_CHASE_BASENAME = 1 << 4, /* If set, also resolve symlink files in config directories. */ - CONF_FILES_FILTER_MASKED_BY_SYMLINK = 1 << 5, - CONF_FILES_FILTER_MASKED_BY_EMPTY = 1 << 6, + CONF_FILES_FILTER_MASKED_BY_SYMLINK = 1 << 4, + CONF_FILES_FILTER_MASKED_BY_EMPTY = 1 << 5, CONF_FILES_FILTER_MASKED = CONF_FILES_FILTER_MASKED_BY_SYMLINK | CONF_FILES_FILTER_MASKED_BY_EMPTY, } ConfFilesFlags; diff --git a/src/test/test-conf-files.c b/src/test/test-conf-files.c index 90b2f2f9b9..44106ef7a8 100644 --- a/src/test/test-conf-files.c +++ b/src/test/test-conf-files.c @@ -185,14 +185,6 @@ TEST(conf_files_list) { strjoina(search3, "relative-non-empty.conf")))); result = strv_free(result); - ASSERT_OK(conf_files_list(&result, /* suffix = */ NULL, /* root = */ NULL, CONF_FILES_REGULAR | CONF_FILES_CHASE_BASENAME, search3)); - strv_print(result); - ASSERT_TRUE(strv_equal(result, STRV_MAKE(strjoina(t2, "/absolute-empty.real"), - strjoina(t2, "/absolute-non-empty.real"), - strjoina(t2, "/relative-empty.real"), - strjoina(t2, "/relative-non-empty.real")))); - result = strv_free(result); - ASSERT_OK(conf_files_list(&result, /* suffix = */ NULL, t, CONF_FILES_FILTER_MASKED, "/dir3/")); strv_print(result); ASSERT_TRUE(strv_equal(result, STRV_MAKE(strjoina(search3, "absolute-non-empty-for-root.conf"), @@ -221,14 +213,6 @@ TEST(conf_files_list) { strjoina(search3, "relative-non-empty-for-root.conf")))); result = strv_free(result); - ASSERT_OK(conf_files_list(&result, /* suffix = */ NULL, t, CONF_FILES_REGULAR | CONF_FILES_CHASE_BASENAME, "/dir3/")); - strv_print(result); - ASSERT_TRUE(strv_equal(result, STRV_MAKE(strjoina(t, "/absolute-empty-for-root.real"), - strjoina(t, "/absolute-non-empty-for-root.real"), - strjoina(t, "/relative-empty-for-root.real"), - strjoina(t, "/relative-non-empty-for-root.real")))); - result = strv_free(result); - ASSERT_OK(conf_files_list_at(&result, /* suffix = */ NULL, AT_FDCWD, CONF_FILES_FILTER_MASKED, search3)); strv_print(result); ASSERT_TRUE(strv_equal(result, STRV_MAKE(strjoina(search3, "absolute-non-empty.conf"), @@ -257,14 +241,6 @@ TEST(conf_files_list) { strjoina(search3, "relative-non-empty.conf")))); result = strv_free(result); - ASSERT_OK(conf_files_list_at(&result, /* suffix = */ NULL, AT_FDCWD, CONF_FILES_REGULAR | CONF_FILES_CHASE_BASENAME, search3)); - strv_print(result); - ASSERT_TRUE(strv_equal(result, STRV_MAKE(strjoina(t2, "/absolute-empty.real"), - strjoina(t2, "/absolute-non-empty.real"), - strjoina(t2, "/relative-empty.real"), - strjoina(t2, "/relative-non-empty.real")))); - result = strv_free(result); - ASSERT_OK(conf_files_list_at(&result, /* suffix = */ NULL, tfd, CONF_FILES_FILTER_MASKED, "/dir3/")); strv_print(result); ASSERT_TRUE(strv_equal(result, STRV_MAKE("dir3/absolute-non-empty-for-root.conf", @@ -293,14 +269,6 @@ TEST(conf_files_list) { "dir3/relative-non-empty-for-root.conf"))); result = strv_free(result); - ASSERT_OK(conf_files_list_at(&result, /* suffix = */ NULL, tfd, CONF_FILES_REGULAR | CONF_FILES_CHASE_BASENAME, "/dir3/")); - strv_print(result); - ASSERT_TRUE(strv_equal(result, STRV_MAKE("absolute-empty-for-root.real", - "absolute-non-empty-for-root.real", - "relative-empty-for-root.real", - "relative-non-empty-for-root.real"))); - result = strv_free(result); - /* filename only */ ASSERT_OK(conf_files_list_strv(&result, ".conf", NULL, CONF_FILES_FILTER_MASKED | CONF_FILES_BASENAME, STRV_MAKE_CONST(search1, search2))); strv_print(result);