]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
userdbctl: add a switch for explicitly enabling/disabling multiplexer-based lookups
authorLennart Poettering <lennart@poettering.net>
Mon, 8 Nov 2021 16:27:26 +0000 (17:27 +0100)
committerLennart Poettering <lennart@poettering.net>
Mon, 8 Nov 2021 20:40:30 +0000 (21:40 +0100)
This is incredibly useful for debugging.

src/userdb/userdbctl.c

index 11b3a1c921ec3357c05d4c163f3fdfd198e6e231..5f3831d70c0e99326b814648fe68cc477dbffddd 100644 (file)
@@ -617,6 +617,7 @@ static int help(int argc, char *argv[], void *userdata) {
                "     --synthesize=BOOL       Synthesize root/nobody user\n"
                "     --with-dropin=BOOL      Control whether to include drop-in records\n"
                "     --with-varlink=BOOL     Control whether to talk to services at all\n"
+               "     --multiplexer=BOOL      Control whether to use the multiplexer\n"
                "     --json=pretty|short     JSON output mode\n"
                "\nSee the %s for details.\n",
                program_invocation_short_name,
@@ -638,6 +639,7 @@ static int parse_argv(int argc, char *argv[]) {
                 ARG_WITH_DROPIN,
                 ARG_WITH_VARLINK,
                 ARG_SYNTHESIZE,
+                ARG_MULTIPLEXER,
                 ARG_JSON,
         };
 
@@ -652,6 +654,7 @@ static int parse_argv(int argc, char *argv[]) {
                 { "with-dropin",  required_argument, NULL, ARG_WITH_DROPIN  },
                 { "with-varlink", required_argument, NULL, ARG_WITH_VARLINK },
                 { "synthesize",   required_argument, NULL, ARG_SYNTHESIZE   },
+                { "multiplexer",  required_argument, NULL, ARG_MULTIPLEXER  },
                 { "json",         required_argument, NULL, ARG_JSON         },
                 {}
         };
@@ -787,6 +790,14 @@ static int parse_argv(int argc, char *argv[]) {
                         SET_FLAG(arg_userdb_flags, USERDB_DONT_SYNTHESIZE, !r);
                         break;
 
+                case ARG_MULTIPLEXER:
+                        r = parse_boolean_argument("--multiplexer=", optarg, NULL);
+                        if (r < 0)
+                                return r;
+
+                        SET_FLAG(arg_userdb_flags, USERDB_AVOID_MULTIPLEXER, !r);
+                        break;
+
                 case '?':
                         return -EINVAL;