]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
fileio: accept FILE* in addition to path in parse_env_file()
authorLennart Poettering <lennart@poettering.net>
Fri, 23 Mar 2018 20:31:14 +0000 (21:31 +0100)
committerLennart Poettering <lennart@poettering.net>
Thu, 24 May 2018 15:01:57 +0000 (17:01 +0200)
Most our other parsing functions do this, let's do this here too,
internally we accept that anyway. Also, the closely related
load_env_file() and load_env_file_pairs() also do this, so let's be
systematic.

29 files changed:
src/basic/fileio.c
src/basic/fileio.h
src/basic/util.c
src/core/locale-setup.c
src/core/main.c
src/firstboot/firstboot.c
src/hostname/hostnamed.c
src/journal-remote/journal-gatewayd.c
src/journal-remote/journal-upload.c
src/journal/journald-stream.c
src/journal/sd-journal.c
src/libsystemd-network/sd-dhcp-lease.c
src/libsystemd/sd-login/sd-login.c
src/libsystemd/sd-network/sd-network.c
src/locale/keymap-util.c
src/locale/localectl.c
src/login/logind-inhibit.c
src/login/logind-session.c
src/login/logind-user.c
src/machine/machine.c
src/network/networkd-link.c
src/network/networkd-lldp-tx.c
src/resolve/resolved-link.c
src/shared/cgroup-show.c
src/shared/condition.c
src/shared/udev-util.c
src/systemctl/systemctl.c
src/test/test-fileio.c
src/vconsole/vconsole-setup.c

index 5cab4c1024c001bf6990184f1a04a19e1788dc24..375d6fd5b34da670e7f4d7ca0828f8ee1e8cb3fd 100644 (file)
@@ -677,6 +677,7 @@ static int parse_env_file_push(
 }
 
 int parse_env_file(
+                FILE *f,
                 const char *fname,
                 const char *newline, ...) {
 
@@ -687,7 +688,7 @@ int parse_env_file(
                 newline = NEWLINE;
 
         va_start(ap, newline);
-        r = parse_env_file_internal(NULL, fname, newline, parse_env_file_push, &ap, &n_pushed);
+        r = parse_env_file_internal(f, fname, newline, parse_env_file_push, &ap, &n_pushed);
         va_end(ap);
 
         return r < 0 ? r : n_pushed;
index bed7c8fb7e4b85981089e69bd0c8c72c90efc9b1..6be261ba0ba80df3b72aff6a4459d2b0d35aa0eb 100644 (file)
@@ -45,7 +45,7 @@ int read_full_stream(FILE *f, char **contents, size_t *size);
 
 int verify_file(const char *fn, const char *blob, bool accept_extra_nl);
 
-int parse_env_file(const char *fname, const char *separator, ...) _sentinel_;
+int parse_env_file(FILE *f, const char *fname, const char *separator, ...) _sentinel_;
 int load_env_file(FILE *f, const char *fname, const char *separator, char ***l);
 int load_env_file_pairs(FILE *f, const char *fname, const char *separator, char ***l);
 
index 68aaa21a8d32d4042dc7c76f0ac3a4a4b643056f..d1580895384e10756d7b93cf7a4eac2dc57cd2d4 100644 (file)
@@ -264,7 +264,7 @@ int container_get_leader(const char *machine, pid_t *pid) {
                 return -EINVAL;
 
         p = strjoina("/run/systemd/machines/", machine);
-        r = parse_env_file(p, NEWLINE, "LEADER", &s, "CLASS", &class, NULL);
+        r = parse_env_file(NULL, p, NEWLINE, "LEADER", &s, "CLASS", &class, NULL);
         if (r == -ENOENT)
                 return -EHOSTDOWN;
         if (r < 0)
index 705dd95de1be46cff495698d995de80a7e7ff306..dcb70d6fe3c8f4c3018b980c5ce839ca1f1f128b 100644 (file)
@@ -24,7 +24,7 @@ int locale_setup(char ***environment) {
         int r = 0, i;
 
         if (detect_container() <= 0) {
-                r = parse_env_file("/proc/cmdline", WHITESPACE,
+                r = parse_env_file(NULL, "/proc/cmdline", WHITESPACE,
                                    "locale.LANG",              &variables[VARIABLE_LANG],
                                    "locale.LANGUAGE",          &variables[VARIABLE_LANGUAGE],
                                    "locale.LC_CTYPE",          &variables[VARIABLE_LC_CTYPE],
@@ -48,7 +48,7 @@ int locale_setup(char ***environment) {
         /* Hmm, nothing set on the kernel cmd line? Then let's
          * try /etc/locale.conf */
         if (r <= 0) {
-                r = parse_env_file("/etc/locale.conf", NEWLINE,
+                r = parse_env_file(NULL, "/etc/locale.conf", NEWLINE,
                                    "LANG",              &variables[VARIABLE_LANG],
                                    "LANGUAGE",          &variables[VARIABLE_LANGUAGE],
                                    "LC_CTYPE",          &variables[VARIABLE_LC_CTYPE],
index d70c1b8160ec29b4963432b5080d3b71e2ac9c9e..e7d89be3f4fbf19642ea751b5ce9852a0c6ab8b7 100644 (file)
@@ -1222,7 +1222,7 @@ static int status_welcome(void) {
                 return 0;
 
         FOREACH_STRING(fn, "/etc/os-release", "/usr/lib/os-release") {
-                r = parse_env_file(fn, NEWLINE,
+                r = parse_env_file(NULL, fn, NEWLINE,
                                    "PRETTY_NAME", &pretty_name,
                                    "ANSI_COLOR", &ansi_color,
                                    NULL);
index 7895e3832aa0516f1e92ac1b538fecaafcd6a456..9b091bf87a56fddb6607d2f840fb32786423b52e 100644 (file)
@@ -87,13 +87,13 @@ static void print_welcome(void) {
                 return;
 
         os_release = prefix_roota(arg_root, "/etc/os-release");
-        r = parse_env_file(os_release, NEWLINE,
+        r = parse_env_file(NULL, os_release, NEWLINE,
                            "PRETTY_NAME", &pretty_name,
                            NULL);
         if (r == -ENOENT) {
 
                 os_release = prefix_roota(arg_root, "/usr/lib/os-release");
-                r = parse_env_file(os_release, NEWLINE,
+                r = parse_env_file(NULL, os_release, NEWLINE,
                                    "PRETTY_NAME", &pretty_name,
                                    NULL);
         }
index 88a8938c311d7d670c342698caac1ede5dcbd9b0..db54e472c64039b4747922bc84922ed0ecb7897f 100644 (file)
@@ -88,7 +88,7 @@ static int context_read_data(Context *c) {
         if (r < 0 && r != -ENOENT)
                 return r;
 
-        r = parse_env_file("/etc/machine-info", NEWLINE,
+        r = parse_env_file(NULL, "/etc/machine-info", NEWLINE,
                            "PRETTY_HOSTNAME", &c->data[PROP_PRETTY_HOSTNAME],
                            "ICON_NAME", &c->data[PROP_ICON_NAME],
                            "CHASSIS", &c->data[PROP_CHASSIS],
@@ -98,13 +98,13 @@ static int context_read_data(Context *c) {
         if (r < 0 && r != -ENOENT)
                 return r;
 
-        r = parse_env_file("/etc/os-release", NEWLINE,
+        r = parse_env_file(NULL, "/etc/os-release", NEWLINE,
                            "PRETTY_NAME", &c->data[PROP_OS_PRETTY_NAME],
                            "CPE_NAME", &c->data[PROP_OS_CPE_NAME],
                            "HOME_URL", &c->data[PROP_HOME_URL],
                            NULL);
         if (r == -ENOENT)
-                r = parse_env_file("/usr/lib/os-release", NEWLINE,
+                r = parse_env_file(NULL, "/usr/lib/os-release", NEWLINE,
                                    "PRETTY_NAME", &c->data[PROP_OS_PRETTY_NAME],
                                    "CPE_NAME", &c->data[PROP_OS_CPE_NAME],
                                    "HOME_URL", &c->data[PROP_HOME_URL],
index 7399d3315f04f3a72bad0edd3a88c33fad459bcf..f80ca7e671d86a10d635083ad0bea356624f6b22 100644 (file)
@@ -777,8 +777,8 @@ static int request_handler_machine(
         if (r < 0)
                 return mhd_respondf(connection, r, MHD_HTTP_INTERNAL_SERVER_ERROR, "Failed to determine disk usage: %m");
 
-        if (parse_env_file("/etc/os-release", NEWLINE, "PRETTY_NAME", &os_name, NULL) == -ENOENT)
-                (void) parse_env_file("/usr/lib/os-release", NEWLINE, "PRETTY_NAME", &os_name, NULL);
+        if (parse_env_file(NULL, "/etc/os-release", NEWLINE, "PRETTY_NAME", &os_name, NULL) == -ENOENT)
+                (void) parse_env_file(NULL, "/usr/lib/os-release", NEWLINE, "PRETTY_NAME", &os_name, NULL);
 
         get_virtualization(&v);
 
index 5194b3136f69b0523bc1b5f595b9cb9fd98bec2b..4a351079e9ace72ef8dc55abf157827c1fe12c4e 100644 (file)
@@ -152,7 +152,7 @@ static int load_cursor_state(Uploader *u) {
         if (!u->state_file)
                 return 0;
 
-        r = parse_env_file(u->state_file, NEWLINE,
+        r = parse_env_file(NULL, u->state_file, NEWLINE,
                            "LAST_CURSOR",  &u->last_cursor,
                            NULL);
 
index 35c664455ef752bebe2975b78ad7cad4eff88828..93a0cc2288572a999e853c684d59dd7a3acab66c 100644 (file)
@@ -646,7 +646,7 @@ static int stdout_stream_load(StdoutStream *stream, const char *fname) {
                         return log_oom();
         }
 
-        r = parse_env_file(stream->state_file, NEWLINE,
+        r = parse_env_file(NULL, stream->state_file, NEWLINE,
                            "PRIORITY", &priority,
                            "LEVEL_PREFIX", &level_prefix,
                            "FORWARD_TO_SYSLOG", &forward_to_syslog,
index 2e81799add17ed5081a9e5b9039dd22d1a6616d8..7d8179035654925545823f0f04f829872695716a 100644 (file)
@@ -1894,7 +1894,7 @@ _public_ int sd_journal_open_container(sd_journal **ret, const char *machine, in
         assert_return(machine_name_is_valid(machine), -EINVAL);
 
         p = strjoina("/run/systemd/machines/", machine);
-        r = parse_env_file(p, NEWLINE, "ROOT", &root, "CLASS", &class, NULL);
+        r = parse_env_file(NULL, p, NEWLINE, "ROOT", &root, "CLASS", &class, NULL);
         if (r == -ENOENT)
                 return -EHOSTDOWN;
         if (r < 0)
index 505d02b50dfaa8f472270b22f5094ffd122fc876..5bc74549574e521b05f2677ce66255151033fb65 100644 (file)
@@ -1034,7 +1034,7 @@ int dhcp_lease_load(sd_dhcp_lease **ret, const char *lease_file) {
         if (r < 0)
                 return r;
 
-        r = parse_env_file(lease_file, NEWLINE,
+        r = parse_env_file(NULL, lease_file, NEWLINE,
                            "ADDRESS", &address,
                            "ROUTER", &router,
                            "NETMASK", &netmask,
index 3f73dadc2ef3a3f9095a1d29945c176d1349d250..fdbc29cc38a161e96907c4f5188f0ae3fc402cf4 100644 (file)
@@ -273,7 +273,7 @@ _public_ int sd_uid_get_state(uid_t uid, char**state) {
         if (r < 0)
                 return r;
 
-        r = parse_env_file(p, NEWLINE, "STATE", &s, NULL);
+        r = parse_env_file(NULL, p, NEWLINE, "STATE", &s, NULL);
         if (r == -ENOENT) {
                 free(s);
                 s = strdup("offline");
@@ -304,7 +304,7 @@ _public_ int sd_uid_get_display(uid_t uid, char **session) {
         if (r < 0)
                 return r;
 
-        r = parse_env_file(p, NEWLINE, "DISPLAY", &s, NULL);
+        r = parse_env_file(NULL, p, NEWLINE, "DISPLAY", &s, NULL);
         if (r == -ENOENT)
                 return -ENODATA;
         if (r < 0)
@@ -359,7 +359,7 @@ _public_ int sd_uid_is_on_seat(uid_t uid, int require_active, const char *seat)
 
         variable = require_active ? "ACTIVE_UID" : "UIDS";
 
-        r = parse_env_file(p, NEWLINE, variable, &s, NULL);
+        r = parse_env_file(NULL, p, NEWLINE, variable, &s, NULL);
         if (r == -ENOENT)
                 return 0;
         if (r < 0)
@@ -388,7 +388,7 @@ static int uid_get_array(uid_t uid, const char *variable, char ***array) {
         if (r < 0)
                 return r;
 
-        r = parse_env_file(p, NEWLINE, variable, &s, NULL);
+        r = parse_env_file(NULL, p, NEWLINE, variable, &s, NULL);
         if (r == -ENOENT || (r >= 0 && isempty(s))) {
                 if (array)
                         *array = NULL;
@@ -466,7 +466,7 @@ _public_ int sd_session_is_active(const char *session) {
         if (r < 0)
                 return r;
 
-        r = parse_env_file(p, NEWLINE, "ACTIVE", &s, NULL);
+        r = parse_env_file(NULL, p, NEWLINE, "ACTIVE", &s, NULL);
         if (r == -ENOENT)
                 return -ENXIO;
         if (r < 0)
@@ -485,7 +485,7 @@ _public_ int sd_session_is_remote(const char *session) {
         if (r < 0)
                 return r;
 
-        r = parse_env_file(p, NEWLINE, "REMOTE", &s, NULL);
+        r = parse_env_file(NULL, p, NEWLINE, "REMOTE", &s, NULL);
         if (r == -ENOENT)
                 return -ENXIO;
         if (r < 0)
@@ -506,7 +506,7 @@ _public_ int sd_session_get_state(const char *session, char **state) {
         if (r < 0)
                 return r;
 
-        r = parse_env_file(p, NEWLINE, "STATE", &s, NULL);
+        r = parse_env_file(NULL, p, NEWLINE, "STATE", &s, NULL);
         if (r == -ENOENT)
                 return -ENXIO;
         if (r < 0)
@@ -529,7 +529,7 @@ _public_ int sd_session_get_uid(const char *session, uid_t *uid) {
         if (r < 0)
                 return r;
 
-        r = parse_env_file(p, NEWLINE, "UID", &s, NULL);
+        r = parse_env_file(NULL, p, NEWLINE, "UID", &s, NULL);
         if (r == -ENOENT)
                 return -ENXIO;
         if (r < 0)
@@ -551,7 +551,7 @@ static int session_get_string(const char *session, const char *field, char **val
         if (r < 0)
                 return r;
 
-        r = parse_env_file(p, NEWLINE, field, &s, NULL);
+        r = parse_env_file(NULL, p, NEWLINE, field, &s, NULL);
         if (r == -ENOENT)
                 return -ENXIO;
         if (r < 0)
@@ -643,7 +643,7 @@ _public_ int sd_seat_get_active(const char *seat, char **session, uid_t *uid) {
         if (r < 0)
                 return r;
 
-        r = parse_env_file(p, NEWLINE,
+        r = parse_env_file(NULL, p, NEWLINE,
                            "ACTIVE", &s,
                            "ACTIVE_UID", &t,
                            NULL);
@@ -681,7 +681,7 @@ _public_ int sd_seat_get_sessions(const char *seat, char ***sessions, uid_t **ui
         if (r < 0)
                 return r;
 
-        r = parse_env_file(p, NEWLINE,
+        r = parse_env_file(NULL, p, NEWLINE,
                            "SESSIONS", &s,
                            "UIDS", &t,
                            NULL);
@@ -750,7 +750,7 @@ static int seat_get_can(const char *seat, const char *variable) {
         if (r < 0)
                 return r;
 
-        r = parse_env_file(p, NEWLINE,
+        r = parse_env_file(NULL, p, NEWLINE,
                            variable, &s,
                            NULL);
         if (r == -ENOENT)
@@ -899,7 +899,7 @@ _public_ int sd_machine_get_class(const char *machine, char **class) {
         assert_return(class, -EINVAL);
 
         p = strjoina("/run/systemd/machines/", machine);
-        r = parse_env_file(p, NEWLINE, "CLASS", &c, NULL);
+        r = parse_env_file(NULL, p, NEWLINE, "CLASS", &c, NULL);
         if (r == -ENOENT)
                 return -ENXIO;
         if (r < 0)
@@ -923,7 +923,7 @@ _public_ int sd_machine_get_ifindices(const char *machine, int **ifindices) {
         assert_return(ifindices, -EINVAL);
 
         p = strjoina("/run/systemd/machines/", machine);
-        r = parse_env_file(p, NEWLINE, "NETIF", &netif, NULL);
+        r = parse_env_file(NULL, p, NEWLINE, "NETIF", &netif, NULL);
         if (r == -ENOENT)
                 return -ENXIO;
         if (r < 0)
index 286e92bc2cfda3de1374dba970bbda652b67d420..4f3f6f9e1d0958113cde0d3054e79ecdbae56739 100644 (file)
@@ -30,7 +30,7 @@ _public_ int sd_network_get_operational_state(char **state) {
 
         assert_return(state, -EINVAL);
 
-        r = parse_env_file("/run/systemd/netif/state", NEWLINE, "OPER_STATE", &s, NULL);
+        r = parse_env_file(NULL, "/run/systemd/netif/state", NEWLINE, "OPER_STATE", &s, NULL);
         if (r == -ENOENT)
                 return -ENODATA;
         if (r < 0)
@@ -50,7 +50,7 @@ static int network_get_strv(const char *key, char ***ret) {
 
         assert_return(ret, -EINVAL);
 
-        r = parse_env_file("/run/systemd/netif/state", NEWLINE, key, &s, NULL);
+        r = parse_env_file(NULL, "/run/systemd/netif/state", NEWLINE, key, &s, NULL);
         if (r == -ENOENT)
                 return -ENODATA;
         if (r < 0)
@@ -98,7 +98,7 @@ static int network_link_get_string(int ifindex, const char *field, char **ret) {
 
         xsprintf(path, "/run/systemd/netif/links/%i", ifindex);
 
-        r = parse_env_file(path, NEWLINE, field, &s, NULL);
+        r = parse_env_file(NULL, path, NEWLINE, field, &s, NULL);
         if (r == -ENOENT)
                 return -ENODATA;
         if (r < 0)
@@ -121,7 +121,7 @@ static int network_link_get_strv(int ifindex, const char *key, char ***ret) {
         assert_return(ret, -EINVAL);
 
         xsprintf(path, "/run/systemd/netif/links/%i", ifindex);
-        r = parse_env_file(path, NEWLINE, key, &s, NULL);
+        r = parse_env_file(NULL, path, NEWLINE, key, &s, NULL);
         if (r == -ENOENT)
                 return -ENODATA;
         if (r < 0)
@@ -218,7 +218,7 @@ static int network_link_get_ifindexes(int ifindex, const char *key, int **ret) {
         assert_return(ret, -EINVAL);
 
         xsprintf(path, "/run/systemd/netif/links/%i", ifindex);
-        r = parse_env_file(path, NEWLINE, key, &s, NULL);
+        r = parse_env_file(NULL, path, NEWLINE, key, &s, NULL);
         if (r == -ENOENT)
                 return -ENODATA;
         if (r < 0)
index 1aca62765879c6c5dcc16a0a871663fa666c1f96..7cc2eb44071d456bf10d3d2e9e26e302b327b411 100644 (file)
@@ -93,7 +93,7 @@ static int locale_read_data(Context *c) {
 
         context_free_locale(c);
 
-        r = parse_env_file("/etc/locale.conf", NEWLINE,
+        r = parse_env_file(NULL, "/etc/locale.conf", NEWLINE,
                            "LANG",              &c->locale[VARIABLE_LANG],
                            "LANGUAGE",          &c->locale[VARIABLE_LANGUAGE],
                            "LC_CTYPE",          &c->locale[VARIABLE_LC_CTYPE],
@@ -137,7 +137,7 @@ static int vconsole_read_data(Context *c) {
 
         context_free_vconsole(c);
 
-        r = parse_env_file("/etc/vconsole.conf", NEWLINE,
+        r = parse_env_file(NULL, "/etc/vconsole.conf", NEWLINE,
                            "KEYMAP",        &c->vc_keymap,
                            "KEYMAP_TOGGLE", &c->vc_keymap_toggle,
                            NULL);
index 473b28de4db3e9094b59c726610f27f1ade5d7ea..49a44ae8bb98992df6dca81616499f5fefaf11c2 100644 (file)
@@ -61,7 +61,7 @@ static void print_overridden_variables(void) {
         if (detect_container() > 0 || arg_host)
                 return;
 
-        r = parse_env_file("/proc/cmdline", WHITESPACE,
+        r = parse_env_file(NULL, "/proc/cmdline", WHITESPACE,
                            "locale.LANG",              &variables[VARIABLE_LANG],
                            "locale.LANGUAGE",          &variables[VARIABLE_LANGUAGE],
                            "locale.LC_CTYPE",          &variables[VARIABLE_LC_CTYPE],
index 0938f2f101ed30abfe733baae96afac0d699fc1c..8bf3e72d22f69dbd66c160426b040b8ff372dd4d 100644 (file)
@@ -198,7 +198,7 @@ int inhibitor_load(Inhibitor *i) {
         char *cc;
         int r;
 
-        r = parse_env_file(i->state_file, NEWLINE,
+        r = parse_env_file(NULL, i->state_file, NEWLINE,
                            "WHAT", &what,
                            "UID", &uid,
                            "PID", &pid,
index eb131ae50cedb364d901f5a4ccb332c6f8579e14..a82498c92e3294b21751a0be7c0c0b3b18a2e327 100644 (file)
@@ -365,7 +365,7 @@ int session_load(Session *s) {
 
         assert(s);
 
-        r = parse_env_file(s->state_file, NEWLINE,
+        r = parse_env_file(NULL, s->state_file, NEWLINE,
                            "REMOTE",         &remote,
                            "SCOPE",          &s->scope,
                            "SCOPE_JOB",      &s->scope_job,
index 8d3af6948c797cd67f8da052c10710ab22d4bb63..1dfc5901476cac0196a756626adc8a3bac50313d 100644 (file)
@@ -287,7 +287,7 @@ int user_load(User *u) {
 
         assert(u);
 
-        r = parse_env_file(u->state_file, NEWLINE,
+        r = parse_env_file(NULL, u->state_file, NEWLINE,
                            "SERVICE_JOB", &u->service_job,
                            "SLICE_JOB",   &u->slice_job,
                            "DISPLAY",     &display,
index 008bbbc3f401dd26e2d288dc03c21c3661f91c82..f57984a0c21445621d9c8d9ca8942e71ffd02f03 100644 (file)
@@ -255,7 +255,7 @@ int machine_load(Machine *m) {
         if (!m->state_file)
                 return 0;
 
-        r = parse_env_file(m->state_file, NEWLINE,
+        r = parse_env_file(NULL, m->state_file, NEWLINE,
                            "SCOPE",     &m->unit,
                            "SCOPE_JOB", &m->scope_job,
                            "SERVICE",   &m->service,
index be0742e47b3462c746f22d56918f757e2bddacfb..8cc817ac003bca7c24bdd2f1a3766934ecfb78a0 100644 (file)
@@ -2866,7 +2866,7 @@ static int link_load(Link *link) {
 
         assert(link);
 
-        r = parse_env_file(link->state_file, NEWLINE,
+        r = parse_env_file(NULL, link->state_file, NEWLINE,
                            "NETWORK_FILE", &network_file,
                            "ADDRESSES", &addresses,
                            "ROUTES", &routes,
index 6cccfc4be0640db6de5a1f394d4286e9a6010937..a2121eb5fffdab3bb1452c4c1c4cbaca20fdbf66 100644 (file)
@@ -249,7 +249,7 @@ static int link_send_lldp(Link *link) {
                 return r;
 
         (void) gethostname_strict(&hostname);
-        (void) parse_env_file("/etc/machine-info", NEWLINE, "PRETTY_HOSTNAME", &pretty_hostname, NULL);
+        (void) parse_env_file(NULL, "/etc/machine-info", NEWLINE, "PRETTY_HOSTNAME", &pretty_hostname, NULL);
 
         assert_cc(LLDP_TX_INTERVAL_USEC * LLDP_TX_HOLD + 1 <= (UINT16_MAX - 1) * USEC_PER_SEC);
         ttl = DIV_ROUND_UP(LLDP_TX_INTERVAL_USEC * LLDP_TX_HOLD + 1, USEC_PER_SEC);
index f2552a11de6e7ac16e5063654bb2740ad1689eb8..a0eedd86d38c6c0c136a5f071957281ea3d87983 100644 (file)
@@ -1202,7 +1202,7 @@ int link_load_user(Link *l) {
         if (l->is_managed)
                 return 0; /* if the device is managed, then networkd is our configuration source, not the bus API */
 
-        r = parse_env_file(l->state_file, NEWLINE,
+        r = parse_env_file(NULL, l->state_file, NEWLINE,
                            "LLMNR", &llmnr,
                            "MDNS", &mdns,
                            "DNSSEC", &dnssec,
index ea2db32510276fbb85d22f85b7549dd42c580ab1..4db638a8749fc9dc7afc97c5435d47633c6b5192 100644 (file)
@@ -344,7 +344,7 @@ int show_cgroup_get_path_and_warn(
                 const char *m;
 
                 m = strjoina("/run/systemd/machines/", machine);
-                r = parse_env_file(m, NEWLINE, "SCOPE", &unit, NULL);
+                r = parse_env_file(NULL, m, NEWLINE, "SCOPE", &unit, NULL);
                 if (r < 0)
                         return log_error_errno(r, "Failed to load machine data: %m");
 
index 87e8a485ffbfb978155be61e46b6da4f2e2b2ad2..bf6476c3393a13338234487bda3e5e0126318669 100644 (file)
@@ -464,7 +464,7 @@ static int condition_test_needs_update(Condition *c) {
                 uint64_t timestamp;
                 int r;
 
-                r = parse_env_file(p, NULL, "TIMESTAMP_NSEC", &timestamp_str, NULL);
+                r = parse_env_file(NULL, p, NULL, "TIMESTAMP_NSEC", &timestamp_str, NULL);
                 if (r < 0) {
                         log_error_errno(r, "Failed to parse timestamp file '%s', using mtime: %m", p);
                         return true;
index cd2e38533fb7556a550d8c69704277915dac458f..29484226c650f61a1e9479f444ad361d3550d7a3 100644 (file)
@@ -18,7 +18,7 @@ int udev_parse_config(void) {
         size_t n;
         int r;
 
-        r = parse_env_file("/etc/udev/udev.conf", NEWLINE, "udev_log", &val, NULL);
+        r = parse_env_file(NULL, "/etc/udev/udev.conf", NEWLINE, "udev_log", &val, NULL);
         if (r == -ENOENT || !val)
                 return 0;
         if (r < 0)
index fcc6c08492894ddcc119f661215a79ed4401366e..60861dd791f687ee1fb860ae571d414cf73a5255 100644 (file)
@@ -5664,7 +5664,7 @@ static int switch_root(int argc, char *argv[], void *userdata) {
         if (argc >= 3)
                 init = argv[2];
         else {
-                r = parse_env_file("/proc/cmdline", WHITESPACE,
+                r = parse_env_file(NULL, "/proc/cmdline", WHITESPACE,
                                    "init", &cmdline_init,
                                    NULL);
                 if (r < 0)
index bbddbf3bcdae7c289e55a637a24e4a7002d73e10..3476c412910bca6bdcf39b6c51275a3c3f4c5bca 100644 (file)
@@ -95,7 +95,7 @@ static void test_parse_env_file(void) {
         }
 
         r = parse_env_file(
-                        t, NULL,
+                        NULL, t, NULL,
                        "one", &one,
                        "two", &two,
                        "three", &three,
index 9cda56e9165d8cfb03681af7d7e1f5e059c6896d..6bf773a1ed65bebe74b910c10b26538c2690ef1d 100644 (file)
@@ -420,7 +420,7 @@ int main(int argc, char **argv) {
 
         utf8 = is_locale_utf8();
 
-        r = parse_env_file("/etc/vconsole.conf", NEWLINE,
+        r = parse_env_file(NULL, "/etc/vconsole.conf", NEWLINE,
                            "KEYMAP", &vc_keymap,
                            "KEYMAP_TOGGLE", &vc_keymap_toggle,
                            "FONT", &vc_font,
@@ -432,7 +432,7 @@ int main(int argc, char **argv) {
 
         /* Let the kernel command line override /etc/vconsole.conf */
         if (detect_container() <= 0) {
-                r = parse_env_file("/proc/cmdline", WHITESPACE,
+                r = parse_env_file(NULL, "/proc/cmdline", WHITESPACE,
                                    "vconsole.keymap", &vc_keymap,
                                    "vconsole.keymap_toggle", &vc_keymap_toggle,
                                    "vconsole.font", &vc_font,