From 60d27f1916c90871c063819a6e7d586c7a663789 Mon Sep 17 00:00:00 2001 From: Ivan Shapovalov Date: Fri, 19 Dec 2014 17:08:07 +0300 Subject: [PATCH] path-lookup, systemctl: export lookup_paths_init_from_scope() from shared/install.c and use it --- src/shared/install.c | 16 ---------------- src/shared/path-lookup.c | 16 ++++++++++++++++ src/shared/path-lookup.h | 4 ++++ src/systemctl/systemctl.c | 6 +----- 4 files changed, 21 insertions(+), 21 deletions(-) diff --git a/src/shared/install.c b/src/shared/install.c index 3b065445b..37191a7c7 100644 --- a/src/shared/install.c +++ b/src/shared/install.c @@ -58,22 +58,6 @@ static int in_search_path(const char *path, char **search) { return strv_contains(search, parent); } -static int lookup_paths_init_from_scope(LookupPaths *paths, - UnitFileScope scope, - const char *root_dir) { - assert(paths); - assert(scope >= 0); - assert(scope < _UNIT_FILE_SCOPE_MAX); - - zero(*paths); - - return lookup_paths_init(paths, - scope == UNIT_FILE_SYSTEM ? SYSTEMD_SYSTEM : SYSTEMD_USER, - scope == UNIT_FILE_USER, - root_dir, - NULL, NULL, NULL); -} - static int get_config_path(UnitFileScope scope, bool runtime, const char *root_dir, char **ret) { char *p = NULL; int r; diff --git a/src/shared/path-lookup.c b/src/shared/path-lookup.c index 8f75a8e83..051f1a483 100644 --- a/src/shared/path-lookup.c +++ b/src/shared/path-lookup.c @@ -398,3 +398,19 @@ void lookup_paths_free(LookupPaths *p) { p->sysvinit_path = p->sysvrcnd_path = NULL; #endif } + +int lookup_paths_init_from_scope(LookupPaths *paths, + UnitFileScope scope, + const char *root_dir) { + assert(paths); + assert(scope >= 0); + assert(scope < _UNIT_FILE_SCOPE_MAX); + + zero(*paths); + + return lookup_paths_init(paths, + scope == UNIT_FILE_SYSTEM ? SYSTEMD_SYSTEM : SYSTEMD_USER, + scope == UNIT_FILE_USER, + root_dir, + NULL, NULL, NULL); +} diff --git a/src/shared/path-lookup.h b/src/shared/path-lookup.h index b8a0aace8..655e4549c 100644 --- a/src/shared/path-lookup.h +++ b/src/shared/path-lookup.h @@ -22,6 +22,7 @@ ***/ #include "macro.h" +#include "install.h" typedef struct LookupPaths { char **unit_path; @@ -49,5 +50,8 @@ int lookup_paths_init(LookupPaths *p, const char *generator_early, const char *generator_late); void lookup_paths_free(LookupPaths *p); +int lookup_paths_init_from_scope(LookupPaths *paths, + UnitFileScope scope, + const char *root_dir); #define _cleanup_lookup_paths_free_ _cleanup_(lookup_paths_free) diff --git a/src/systemctl/systemctl.c b/src/systemctl/systemctl.c index 3d939f050..679541493 100644 --- a/src/systemctl/systemctl.c +++ b/src/systemctl/systemctl.c @@ -4515,11 +4515,7 @@ static int init_home_and_lookup_paths(char **user_home, char **user_runtime, Loo return log_error_errno(ENOTDIR, "Cannot find units: $XDG_RUNTIME_DIR is not set."); } - r = lookup_paths_init(lp, - arg_scope == UNIT_FILE_SYSTEM ? SYSTEMD_SYSTEM : SYSTEMD_USER, - arg_scope == UNIT_FILE_USER, - arg_root, - NULL, NULL, NULL); + r = lookup_paths_init_from_scope(lp, arg_scope, arg_root); if (r < 0) return log_error_errno(r, "Failed to lookup unit lookup paths: %m"); -- 2.30.2