diff options
Diffstat (limited to 'contrib/brctl')
-rw-r--r-- | contrib/brctl | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/contrib/brctl b/contrib/brctl new file mode 100644 index 00000000..1ecdc127 --- /dev/null +++ b/contrib/brctl @@ -0,0 +1,44 @@ +# -*- mode: shell-script; sh-basic-offset: 8; indent-tabs-mode: t -*- +# ex: ts=8 sw=8 noet filetype=sh +# +# bash completion for brctl + +have brctl && +_brctl() +{ + local cur command + + COMPREPLY=() + cur=`_get_cword` + command=${COMP_WORDS[1]} + + 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) + case $command in + show) + ;; + *) + COMPREPLY=( $( compgen -W "$(brctl \ + show | sed '1d' | \ + awk '{print $1}' )" -- $cur ) ) + esac + ;; + 3) + case $command in + @(add|del)if) + _configured_interfaces + ;; + stp) + COMPREPLY=( $( compgen -W 'on off' -- $cur ) ) + ;; + esac + ;; + esac +} && +complete -F _brctl $default brctl |