]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
os-util: add load_extension_release_pairs helper
authorLuca Boccassi <luca.boccassi@microsoft.com>
Wed, 27 Jan 2021 12:53:13 +0000 (12:53 +0000)
committerLuca Boccassi <luca.boccassi@microsoft.com>
Wed, 17 Feb 2021 21:24:23 +0000 (21:24 +0000)
src/shared/os-util.c
src/shared/os-util.h

index 3ecc03b02257ba94d8805c9384343c35de94c820..2916dfeba4b7c0ade1252f4a529d6bfd5b359de6 100644 (file)
@@ -180,3 +180,15 @@ int load_os_release_pairs_with_prefix(const char *root, const char *prefix, char
 
         return 0;
 }
+
+int load_extension_release_pairs(const char *root, const char *extension, char ***ret) {
+        _cleanup_fclose_ FILE *f = NULL;
+        _cleanup_free_ char *p = NULL;
+        int r;
+
+        r = fopen_extension_release(root, extension, &p, &f);
+        if (r < 0)
+                return r;
+
+        return load_env_file_pairs(f, p, ret);
+}
index a6cedc6087d413df28359f85fbe1859f037b21cc..bdb9e6adea9cb2c6e85d11dd46b9ddf63424345d 100644 (file)
@@ -23,5 +23,6 @@ static inline int fopen_os_release(const char *root, char **ret_path, FILE **ret
 
 int parse_extension_release(const char *root, const char *extension, ...) _sentinel_;
 int parse_os_release(const char *root, ...) _sentinel_;
+int load_extension_release_pairs(const char *root, const char *extension, char ***ret);
 int load_os_release_pairs(const char *root, char ***ret);
 int load_os_release_pairs_with_prefix(const char *root, const char *prefix, char ***ret);