diff --git a/to_review/brctl b/to_review/brctl new file mode 100644 index 00000000..c3b8e797 --- /dev/null +++ b/to_review/brctl @@ -0,0 +1,45 @@ +# -*- mode: shell-script; sh-basic-offset: 8; indent-tabs-mode: t -*- +# ex: ts=8 sw=8 noet filetype=sh +# +# bash completion for brtcl + +have brctl && +_brctl() +{ + local cur command + + COMPREPLY=() + cur=${COMP_WORDS[COMP_CWORD]} + + case $COMP_CWORD in + 1) + COMPREPLY=( $( compgen -W "addbr delbr addif delif \ + setageing setbridgeprio setfd sethello \ + setmaxage setpathcost setportprio show \ + showmacs showstp stp" -- $cur ) ) + ;; + 2) + command=${COMP_WORDS[1]} + case $command in + show) + ;; + *) + COMPREPLY=( $( compgen -W "$(brctl \ + show | sed '1d' | \ + awk '{print $1}' )" -- $cur ) ) + esac + ;; + 3) + command=${COMP_WORDS[1]} + case $command in + @(add|del)if) + _configured_interfaces + ;; + stp) + COMPREPLY=( $( compgen -W 'on off' -- $cur ) ) + ;; + esac + ;; + esac +} && +complete -F _brctl brctl