From: Zbigniew Jędrzejewski-Szmek Date: Wed, 2 Jan 2019 12:12:18 +0000 (+0100) Subject: Introduce CONF_PATHS_USR_STRV to mirror CONF_PATHS_STRV X-Git-Tag: v242-rc1~295^2~12 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=f7767d76bb8598c31deb1c0122a7b17947b5df4f;p=thirdparty%2Fsystemd.git Introduce CONF_PATHS_USR_STRV to mirror CONF_PATHS_STRV --- diff --git a/src/basic/def.h b/src/basic/def.h index 5be018d82e4..929da726ae5 100644 --- a/src/basic/def.h +++ b/src/basic/def.h @@ -66,12 +66,20 @@ "/usr/lib/" n "\0" \ _CONF_PATHS_SPLIT_USR_NULSTR(n) +#define CONF_PATHS_USR(n) \ + "/etc/" n, \ + "/run/" n, \ + "/usr/local/lib/" n, \ + "/usr/lib/" n + +#define CONF_PATHS(n) \ + CONF_PATHS_USR(n) \ + _CONF_PATHS_SPLIT_USR(n) + +#define CONF_PATHS_USR_STRV(n) \ + STRV_MAKE(CONF_PATHS_USR(n)) + #define CONF_PATHS_STRV(n) \ - STRV_MAKE( \ - "/etc/" n, \ - "/run/" n, \ - "/usr/local/lib/" n, \ - "/usr/lib/" n \ - _CONF_PATHS_SPLIT_USR(n)) + STRV_MAKE(CONF_PATHS(n)) #define HIGH_RLIMIT_MEMLOCK (1024ULL*1024ULL*64ULL) diff --git a/src/shared/install.c b/src/shared/install.c index 5a1fff47c4f..9e88ac46bd5 100644 --- a/src/shared/install.c +++ b/src/shared/install.c @@ -15,6 +15,7 @@ #include "alloc-util.h" #include "conf-files.h" #include "conf-parser.h" +#include "def.h" #include "dirent-util.h" #include "extract-word.h" #include "fd-util.h" @@ -2821,40 +2822,26 @@ static int split_pattern_into_name_and_instances(const char *pattern, char **out } static int presets_find_config(UnitFileScope scope, const char *root_dir, char ***files) { - int r; + const char* const* dirs; assert(scope >= 0); assert(scope < _UNIT_FILE_SCOPE_MAX); - assert(files); switch (scope) { case UNIT_FILE_SYSTEM: - r = conf_files_list(files, ".preset", root_dir, 0, - "/etc/systemd/system-preset", - "/run/systemd/system-preset", - "/usr/local/lib/systemd/system-preset", - "/usr/lib/systemd/system-preset", -#if HAVE_SPLIT_USR - "/lib/systemd/system-preset", -#endif - NULL); + dirs = (const char* const*) CONF_PATHS_STRV("systemd/system-preset"); break; case UNIT_FILE_GLOBAL: case UNIT_FILE_USER: - r = conf_files_list(files, ".preset", root_dir, 0, - "/etc/systemd/user-preset", - "/run/systemd/user-preset", - "/usr/local/lib/systemd/user-preset", - "/usr/lib/systemd/user-preset", - NULL); + dirs = (const char* const*) CONF_PATHS_USR_STRV("systemd/user-preset"); break; default: assert_not_reached("Invalid unit file scope"); } - return r; + return conf_files_list_strv(files, ".preset", root_dir, 0, dirs); } static int read_presets(UnitFileScope scope, const char *root_dir, Presets *presets) {