]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
resolvectl: introduce --no-ask-password option
authorYu Watanabe <watanabe.yu+github@gmail.com>
Mon, 19 Aug 2024 02:36:22 +0000 (11:36 +0900)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Mon, 19 Aug 2024 02:36:22 +0000 (11:36 +0900)
man/resolvectl.xml
shell-completion/bash/resolvectl
shell-completion/zsh/_resolvectl
src/resolve/resolvectl.c

index ed656b48d72f2e8992e8822ca8d283c2b8644812..303aa932917dee200268e0288aa564254ff597fe 100644 (file)
         <xi:include href="version-info.xml" xpointer="v256"/></listitem>
       </varlistentry>
 
+      <varlistentry>
+        <term><option>--no-ask-password</option></term>
+
+        <listitem>
+          <para>Do not query the user for authentication for privileged operations.</para>
+
+          <xi:include href="version-info.xml" xpointer="v257"/>
+        </listitem>
+      </varlistentry>
+
       <xi:include href="standard-options.xml" xpointer="json" />
       <xi:include href="standard-options.xml" xpointer="j" />
       <xi:include href="standard-options.xml" xpointer="no-pager" />
index 344eaad9732a2531730ecc6ffc298586c4424796..5f2102ccbaa96eadc36e75a6cc620ceb87365fa9 100644 (file)
@@ -38,7 +38,7 @@ _resolvectl() {
         [STANDALONE]='-h --help --version -4 -6 --legend=no --cname=no
                       --validate=no --synthesize=no --cache=no --relax-single-label=no --zone=no
                       --trust-anchor=no --network=no --service-address=no
-                      --service-txt=no --search=no --stale-data=no --no-pager'
+                      --service-txt=no --search=no --stale-data=no --no-pager --no-ask-password'
         [ARG]='-t --type -c --class -i --interface -p --protocol --raw --json'
     )
     local -A VERBS=(
index 4ca469adcf31ffd84c3917a96d7479603a516744..c779f73ff388b412698d38f7985e684b67bb8032 100644 (file)
@@ -94,4 +94,6 @@ _arguments \
     '--search=[Do not use search domains]:BOOL:(yes no)' \
     '--raw=[Dump the answer as binary data]:RAW:(payload packet)' \
     '--json=[Output as JSON]:JSON:(pretty short off)' \
+    '--no-pager[Do not pipe output into a pager]' \
+    '--no-ask-password[Do not prompt for password]' \
     '*::default: _resolvectl_commands'
index 1f7eb9acdb6b2ef177d6acfb0b6829a5b385f95b..a759f9af075cc774358fed871b5bdbdb7896347f 100644 (file)
@@ -3352,6 +3352,7 @@ static int native_help(void) {
                "  -h --help                    Show this help\n"
                "     --version                 Show package version\n"
                "     --no-pager                Do not pipe output into a pager\n"
+               "     --no-ask-password         Do not prompt for password\n"
                "  -4                           Resolve IPv4 addresses\n"
                "  -6                           Resolve IPv6 addresses\n"
                "  -i --interface=INTERFACE     Look on interface\n"
@@ -3724,6 +3725,7 @@ static int native_parse_argv(int argc, char *argv[]) {
                 ARG_RAW,
                 ARG_SEARCH,
                 ARG_NO_PAGER,
+                ARG_NO_ASK_PASSWORD,
                 ARG_JSON,
                 ARG_STALE_DATA,
                 ARG_RELAX_SINGLE_LABEL,
@@ -3749,6 +3751,7 @@ static int native_parse_argv(int argc, char *argv[]) {
                 { "raw",                   optional_argument, NULL, ARG_RAW                   },
                 { "search",                required_argument, NULL, ARG_SEARCH                },
                 { "no-pager",              no_argument,       NULL, ARG_NO_PAGER              },
+                { "no-ask-password",       no_argument,       NULL, ARG_NO_ASK_PASSWORD       },
                 { "json",                  required_argument, NULL, ARG_JSON                  },
                 { "stale-data",            required_argument, NULL, ARG_STALE_DATA            },
                 { "relax-single-label",    required_argument, NULL, ARG_RELAX_SINGLE_LABEL    },
@@ -3949,6 +3952,10 @@ static int native_parse_argv(int argc, char *argv[]) {
                         arg_pager_flags |= PAGER_DISABLE;
                         break;
 
+                case ARG_NO_ASK_PASSWORD:
+                        arg_ask_password = false;
+                        break;
+
                 case ARG_JSON:
                         r = parse_json_argument(optarg, &arg_json_format_flags);
                         if (r <= 0)