chiark / gitweb /
shared: conf-files - add root parameter
authorKay Sievers <kay@vrfy.org>
Fri, 8 Feb 2013 09:22:02 +0000 (10:22 +0100)
committerKay Sievers <kay@vrfy.org>
Fri, 8 Feb 2013 09:23:04 +0000 (10:23 +0100)
12 files changed:
src/binfmt/binfmt.c
src/core/load-dropin.c
src/journal/catalog.c
src/modules-load/modules-load.c
src/shared/conf-files.c
src/shared/conf-files.h
src/shared/install.c
src/sysctl/sysctl.c
src/timedate/timedated.c
src/tmpfiles/tmpfiles.c
src/udev/udev-rules.c
src/udev/udevadm-hwdb.c

index 788fd4b1a49455dd344b0c945af383f5c6ceb761..296607d6a270f7e017a3ee8992d9e5a12a4f74b5 100644 (file)
@@ -138,7 +138,7 @@ int main(int argc, char *argv[]) {
         } else {
                 char **files, **f;
 
-                r = conf_files_list(&files, ".conf",
+                r = conf_files_list(&files, ".conf", NULL,
                                     "/etc/binfmt.d",
                                     "/run/binfmt.d",
                                     "/usr/local/lib/binfmt.d",
index 52ebfea6dc7d3ae79f6c0c6152adc981198d6fe4..95c9a386ca8efffc7a68cc951975cfd7e6e47454 100644 (file)
@@ -171,7 +171,7 @@ int unit_load_dropin(Unit *u) {
                 _cleanup_strv_free_ char **files = NULL;
                 char **f;
 
-                r = conf_files_list_strv(&files, ".conf", (const char**) strv);
+                r = conf_files_list_strv(&files, ".conf", NULL, (const char**) strv);
                 if (r < 0) {
                         log_error("Failed to get list of configuration files: %s", strerror(-r));
                         return r;
index 3735ad9213d041712a7da91a56baf98b2ba4b799..32256f6263a6c43df3e6f07cd238faf87d701d00 100644 (file)
@@ -296,7 +296,7 @@ int catalog_update(void) {
                 goto finish;
         }
 
-        r = conf_files_list_strv(&files, ".catalog", (const char **) conf_file_dirs);
+        r = conf_files_list_strv(&files, ".catalog", NULL, (const char **) conf_file_dirs);
         if (r < 0) {
                 log_error("Failed to get catalog files: %s", strerror(-r));
                 goto finish;
index f6279e1975267b50645f72514cfcab5ada0b18c4..936aaed8e46cc8cebf2e834c377c3f66aaf96534 100644 (file)
@@ -198,7 +198,7 @@ int main(int argc, char *argv[]) {
                         r = EXIT_FAILURE;
         }
 
-        k = conf_files_list(&files, ".conf",
+        k = conf_files_list(&files, ".conf", NULL,
                             "/etc/modules-load.d",
                             "/run/modules-load.d",
                             "/usr/local/lib/modules-load.d",
index 34b86293d3a246b9703a36eab41f8f020de4ff38..368b7bf6bb3b319d60b88ed24ba92962f01c4377 100644 (file)
@@ -37,7 +37,7 @@
 #include "hashmap.h"
 #include "conf-files.h"
 
-static int files_add(Hashmap *h, const char *path, const char *suffix) {
+static int files_add(Hashmap *h, const char *root, const char *path, const char *suffix) {
         DIR *dir;
         int r = 0;
 
@@ -90,7 +90,7 @@ static int base_cmp(const void *a, const void *b) {
         return strcmp(path_get_file_name(s1), path_get_file_name(s2));
 }
 
-int conf_files_list_strv(char ***strv, const char *suffix, const char **dirs) {
+int conf_files_list_strv(char ***strv, const char *suffix, const char *root, const char **dirs) {
         Hashmap *fh = NULL;
         char **files = NULL;
         const char **p;
@@ -105,7 +105,7 @@ int conf_files_list_strv(char ***strv, const char *suffix, const char **dirs) {
         }
 
         STRV_FOREACH(p, dirs) {
-                r = files_add(fh, *p, suffix);
+                r = files_add(fh, root, *p, suffix);
                 if (r < 0)
                         log_warning("Failed to search for files in %s: %s",
                                     *p, strerror(-r));
@@ -126,7 +126,7 @@ finish:
         return r;
 }
 
-int conf_files_list(char ***strv, const char *suffix, const char *dir, ...) {
+int conf_files_list(char ***strv, const char *suffix, const char *root, const char *dir, ...) {
         char **dirs = NULL;
         va_list ap;
         int r;
@@ -145,7 +145,7 @@ int conf_files_list(char ***strv, const char *suffix, const char *dir, ...) {
         }
         strv_uniq(dirs);
 
-        r = conf_files_list_strv(strv, suffix, (const char **)dirs);
+        r = conf_files_list_strv(strv, suffix, root, (const char **)dirs);
 
 finish:
         strv_free(dirs);
index f37ee1f3dbfdc077d0e0af7de30012a83eacc2b5..4d7941f4cb5265265382c7d11bbd4b1b03471bf3 100644 (file)
@@ -25,7 +25,7 @@
 
 #include "macro.h"
 
-int conf_files_list(char ***strv, const char *suffix, const char *dir, ...);
-int conf_files_list_strv(char ***strv, const char *suffix, const char **dirs);
+int conf_files_list(char ***strv, const char *suffix, const char *root, const char *dir, ...);
+int conf_files_list_strv(char ***strv, const char *suffix, const char *root, const char **dirs);
 
 #endif
index b82d1891dd3846af67ae6b1879b82400c936ea3f..2555a36c0a9226c5cfa9f95631b408b717c937df 100644 (file)
@@ -1658,7 +1658,7 @@ int unit_file_query_preset(UnitFileScope scope, const char *name) {
         assert(name);
 
         if (scope == UNIT_FILE_SYSTEM)
-                r = conf_files_list(&files, ".preset",
+                r = conf_files_list(&files, ".preset", NULL,
                                     "/etc/systemd/system-preset",
                                     "/usr/local/lib/systemd/system-preset",
                                     "/usr/lib/systemd/system-preset",
@@ -1667,7 +1667,7 @@ int unit_file_query_preset(UnitFileScope scope, const char *name) {
 #endif
                                     NULL);
         else if (scope == UNIT_FILE_GLOBAL)
-                r = conf_files_list(&files, ".preset",
+                r = conf_files_list(&files, ".preset", NULL,
                                     "/etc/systemd/user-preset",
                                     "/usr/local/lib/systemd/user-preset",
                                     "/usr/lib/systemd/user-preset",
index 035e0ec321c5a4d951fd91e7761fc6430edb0f29..f5ef89b38579be8bb0870f723a677af37b96602a 100644 (file)
@@ -289,7 +289,7 @@ int main(int argc, char *argv[]) {
         } else {
                 char **files, **f;
 
-                r = conf_files_list(&files, ".conf",
+                r = conf_files_list(&files, ".conf", NULL,
                                     "/etc/sysctl.d",
                                     "/run/sysctl.d",
                                     "/usr/local/lib/sysctl.d",
index f5430e9f78a76c34c7fe5fb1c28306776b1d6027..b8c6b368585976d2beac693e4d4bac068ad91c29 100644 (file)
@@ -280,7 +280,7 @@ static char** get_ntp_services(void) {
         char **r = NULL, **files, **i;
         int k;
 
-        k = conf_files_list(&files, ".list",
+        k = conf_files_list(&files, ".list", NULL,
                             "/etc/systemd/ntp-units.d",
                             "/run/systemd/ntp-units.d",
                             "/usr/local/lib/systemd/ntp-units.d",
index c2023f5454c72c9a468f905c5c83df08d84088ec..96adbff42e9dcab8613e1a957add1074cef6c199 100644 (file)
@@ -1435,7 +1435,7 @@ int main(int argc, char *argv[]) {
         } else {
                 char **files, **f;
 
-                r = conf_files_list_strv(&files, ".conf", (const char **)conf_file_dirs);
+                r = conf_files_list_strv(&files, ".conf", NULL, (const char **)conf_file_dirs);
                 if (r < 0) {
                         log_error("Failed to enumerate tmpfiles.d files: %s", strerror(-r));
                         r = EXIT_FAILURE;
index bb57d2af4809a5d40e89da01b5d450ab35230a5d..a86f8c365a958db2708a2e9017d9fd27a4f1eeb6 100644 (file)
@@ -1619,7 +1619,7 @@ struct udev_rules *udev_rules_new(struct udev *udev, int resolve_names)
                 return udev_rules_unref(rules);
         udev_rules_check_timestamp(rules);
 
-        r = conf_files_list_strv(&files, ".rules", (const char **)rules->dirs);
+        r = conf_files_list_strv(&files, ".rules", NULL, (const char **)rules->dirs);
         if (r < 0) {
                 log_error("failed to enumerate rules files: %s\n", strerror(-r));
                 return udev_rules_unref(rules);
index 8e515b9f715a7e2e9b1b0fa362807e9a89f8f052..596a89b6400438d14507154875c44a4a7a8b0a5f 100644 (file)
@@ -537,7 +537,7 @@ static int adm_hwdb(struct udev *udev, int argc, char *argv[]) {
                 }
                 trie->nodes_count++;
 
-                err = conf_files_list_strv(&files, ".hwdb", (const char **)conf_file_dirs);
+                err = conf_files_list_strv(&files, ".hwdb", NULL, (const char **)conf_file_dirs);
                 if (err < 0) {
                         log_error("failed to enumerate hwdb files: %s\n", strerror(-err));
                         rc = EXIT_FAILURE;