]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
sd-path: export "systemd-network-path"
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Tue, 24 Mar 2020 16:12:45 +0000 (17:12 +0100)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Fri, 27 Mar 2020 19:12:45 +0000 (20:12 +0100)
Inspired by https://lists.freedesktop.org/archives/systemd-devel/2020-March/044169.html.

man/sd_path_lookup.xml
src/basic/path-lookup.h
src/libsystemd/sd-path/sd-path.c
src/path/path.c
src/systemd/sd-path.h

index 81812bc003d91a275b89b309e6d72f8d5ffb6339..35a1109af381bb0e16c2b7bb38c1a97984ed699d 100644 (file)
@@ -98,6 +98,8 @@
         <constant>SD_PATH_BINFMT_DIR</constant>,
         <constant>SD_PATH_MODULES_LOAD_DIR</constant>,
         <constant>SD_PATH_CATALOG_DIR</constant>,
+
+        <constant>SD_PATH_SYSTEMD_NETWORK_PATH</constant>,
 };</funcsynopsisinfo>
 
       <funcprototype>
index f67b8d416a1e334599fcde3e3a96922d77d338e4..ae37f9feb9dbb587a66a4509b0a516c25080adfc 100644 (file)
@@ -71,3 +71,4 @@ char **generator_binary_paths(UnitFileScope scope);
 char **env_generator_binary_paths(bool is_system);
 
 #define NETWORK_DIRS ((const char* const*) CONF_PATHS_STRV("systemd/network"))
+#define NETWORK_DIRS_NULSTR CONF_PATHS_NULSTR("systemd/network")
index 4fd96fb5a2191c66ed0c3bde74212e69d1caf13e..2a9c04a84d5b50c8bf6bee549b48416c9835466e 100644 (file)
@@ -633,7 +633,12 @@ static int get_search(uint64_t type, char ***list) {
 
                 *list = t;
                 return 0;
-        }}
+        }
+
+        case SD_PATH_SYSTEMD_NETWORK_PATH:
+                return strv_from_nulstr(list, NETWORK_DIRS_NULSTR);
+
+        }
 
         return -EOPNOTSUPP;
 }
index aefdae1d515a272dfe7041f6c4c4dbe78e87ff17..20892fe1f21882d66883cd2204974caa7cb365b9 100644 (file)
@@ -81,6 +81,8 @@ static const char* const path_table[_SD_PATH_MAX] = {
         [SD_PATH_BINFMT_DIR]                    = "binfmt-dir",
         [SD_PATH_MODULES_LOAD_DIR]              = "modules-load-dir",
         [SD_PATH_CATALOG_DIR]                   = "catalog-dir",
+
+        [SD_PATH_SYSTEMD_NETWORK_PATH]          = "systemd-network-path",
 };
 
 static int list_homes(void) {
index 203f01dd9093e489dfa7cbe12385929247773d9a..7da7a9f8148d99fc21a160d17def86fa58bd5ac6 100644 (file)
@@ -102,6 +102,9 @@ enum {
         SD_PATH_MODULES_LOAD_DIR,
         SD_PATH_CATALOG_DIR,
 
+        /* systemd-networkd search paths */
+        SD_PATH_SYSTEMD_NETWORK_PATH,
+
         _SD_PATH_MAX,
 };