chiark / gitweb /
tree-wide: allow state to be passed through to parse_proc_cmdline_item
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Sat, 22 Oct 2016 18:24:52 +0000 (14:24 -0400)
committerSven Eden <yamakuzure@gmx.net>
Wed, 5 Jul 2017 06:50:55 +0000 (08:50 +0200)
No functional change.

src/basic/log.c
src/basic/proc-cmdline.c
src/basic/proc-cmdline.h

index 521ea92..e05dd65 100644 (file)
@@ -985,7 +985,7 @@ int log_set_max_level_from_string(const char *e) {
         return 0;
 }
 
-static int parse_proc_cmdline_item(const char *key, const char *value) {
+static int parse_proc_cmdline_item(const char *key, const char *value, void *data) {
 
         /*
          * The systemd.log_xyz= settings are parsed by all tools, and
@@ -1030,7 +1030,7 @@ void log_parse_environment(void) {
                 /* Only try to read the command line in daemons.
                    We assume that anything that has a controlling
                    tty is user stuff. */
-                (void) parse_proc_cmdline(parse_proc_cmdline_item);
+                (void) parse_proc_cmdline(parse_proc_cmdline_item, NULL);
 
         e = secure_getenv("SYSTEMD_LOG_TARGET");
         if (e && log_set_target_from_string(e) < 0)
index 60a4e23..eb6ca61 100644 (file)
@@ -42,7 +42,7 @@ int proc_cmdline(char **ret) {
                 return read_one_line_file("/proc/cmdline", ret);
 }
 
-int parse_proc_cmdline(int (*parse_item)(const char *key, const char *value)) {
+int parse_proc_cmdline(int (*parse_item)(const char *key, const char *value, void *data), void *data) {
         _cleanup_free_ char *line = NULL;
         const char *p;
         int r;
@@ -73,7 +73,7 @@ int parse_proc_cmdline(int (*parse_item)(const char *key, const char *value)) {
                 if (value)
                         *(value++) = 0;
 
-                r = parse_item(word, value);
+                r = parse_item(word, value, data);
                 if (r < 0)
                         return r;
         }
index 09a3e66..e662e55 100644 (file)
@@ -20,7 +20,7 @@
 ***/
 
 int proc_cmdline(char **ret);
-int parse_proc_cmdline(int (*parse_word)(const char *key, const char *value));
+int parse_proc_cmdline(int (*parse_word)(const char *key, const char *value, void *data), void *data);
 int get_proc_cmdline_key(const char *parameter, char **value);
 
 #if 0 /// UNNEEDED by elogind