bash-completion/resolvectl: support privatedns command
This commit is contained in:
parent
ddf1a95301
commit
1a363edad1
|
@ -48,12 +48,14 @@ _resolvectl() {
|
|||
[LINK]='revert dns domain nta'
|
||||
[RESOLVE]='llmnr mdns'
|
||||
[DNSSEC]='dnssec'
|
||||
[PRIVATEDNS]='privatedns'
|
||||
[STANDALONE]='statistics reset-statistics flush-caches reset-server-features'
|
||||
)
|
||||
local -A ARGS=(
|
||||
[FAMILY]='tcp udp sctp'
|
||||
[RESOLVE]='yes no resolve'
|
||||
[DNSSEC]='yes no allow-downgrade'
|
||||
[PRIVATEDNS]='no opportunistic'
|
||||
)
|
||||
local interfaces=$( __get_interfaces )
|
||||
|
||||
|
@ -109,7 +111,7 @@ _resolvectl() {
|
|||
comps=""
|
||||
fi
|
||||
|
||||
elif __contains_word "$verb" ${VERBS[LINK]} ${VERBS[RESOLVE]} ${VERBS[DNSSEC]}; then
|
||||
elif __contains_word "$verb" ${VERBS[LINK]} ${VERBS[RESOLVE]} ${VERBS[DNSSEC]} ${VERBS[PRIVATEDNS]}; then
|
||||
for ((i++; i < COMP_CWORD; i++)); do
|
||||
if __contains_word "${COMP_WORDS[i]}" $interfaces &&
|
||||
! __contains_word "${COMP_WORDS[i-1]}" ${OPTS[ARG]}; then
|
||||
|
@ -153,6 +155,22 @@ _resolvectl() {
|
|||
comps=''
|
||||
fi
|
||||
|
||||
elif __contains_word "$verb" ${VERBS[PRIVATEDNS]}; then
|
||||
name=
|
||||
for ((i++; i < COMP_CWORD; i++)); do
|
||||
if __contains_word "${COMP_WORDS[i]}" ${ARGS[PRIVATEDNS]} &&
|
||||
! __contains_word "${COMP_WORDS[i-1]}" ${OPTS[ARG]}; then
|
||||
name=${COMP_WORDS[i]}
|
||||
break;
|
||||
fi
|
||||
done
|
||||
|
||||
if [[ -z $name ]]; then
|
||||
comps=${ARGS[PRIVATEDNS]}
|
||||
else
|
||||
comps=''
|
||||
fi
|
||||
|
||||
else
|
||||
comps=''
|
||||
fi
|
||||
|
|
|
@ -65,6 +65,9 @@ _systemd-resolve() {
|
|||
--set-dnssec)
|
||||
comps="yes no allow-downgrade"
|
||||
;;
|
||||
--set-privatedns)
|
||||
comps="no opportunistic"
|
||||
;;
|
||||
esac
|
||||
COMPREPLY=( $(compgen -W '$comps' -- "$cur") )
|
||||
return 0
|
||||
|
|
Loading…
Reference in New Issue