mirror of
https://github.com/Gator96100/ProxSpace.git
synced 2025-07-30 11:38:41 -07:00
82 lines
2.3 KiB
Bash
82 lines
2.3 KiB
Bash
# bash completion for vpnc -*- shell-script -*-
|
|
|
|
_vpnc()
|
|
{
|
|
local cur prev words cword
|
|
_init_completion || return
|
|
|
|
case $prev in
|
|
--help|--long-help|--version|--id|--username|--domain|--ifname|\
|
|
--application-version|--local-addr|--local-port|--udp-port|--dpd-idle|\
|
|
--target-network|--ifmtu)
|
|
return
|
|
;;
|
|
--gateway)
|
|
_known_hosts_real -- "$cur"
|
|
return
|
|
;;
|
|
--vendor)
|
|
COMPREPLY=( $( compgen -W 'cisco netscreen' -- "$cur" ) )
|
|
return
|
|
;;
|
|
--natt-mode)
|
|
COMPREPLY=( $( compgen -W 'natt none force-natt cisco-udp' \
|
|
-- "$cur" ) )
|
|
return
|
|
;;
|
|
--script|--pid-file|--ca-file)
|
|
_filedir
|
|
return
|
|
;;
|
|
--dh)
|
|
COMPREPLY=( $( compgen -W 'dh1 dh2 dh5' -- "$cur" ) )
|
|
return
|
|
;;
|
|
--pfs)
|
|
COMPREPLY=( $( compgen -W 'nopfs dh1 dh2 dh5 server' -- "$cur" ) )
|
|
return
|
|
;;
|
|
--ifmode)
|
|
COMPREPLY=( $( compgen -W 'tun tap' -- "$cur" ) )
|
|
return
|
|
;;
|
|
--debug)
|
|
COMPREPLY=( $( compgen -W '0 1 2 3 99' -- "$cur" ) )
|
|
return
|
|
;;
|
|
--auth-mode)
|
|
COMPREPLY=( $( compgen -W 'psk cert hybrid' -- "$cur" ) )
|
|
return
|
|
;;
|
|
--ca-dir)
|
|
_filedir -d
|
|
return
|
|
;;
|
|
--password-helper)
|
|
compopt -o filenames
|
|
COMPREPLY=( $( compgen -c -- "$cur" ) )
|
|
return
|
|
;;
|
|
esac
|
|
|
|
if [[ "$cur" == -* ]]; then
|
|
COMPREPLY=( $( compgen -W '$( _parse_help "$1" --long-help )' \
|
|
-- "$cur" ) )
|
|
elif [[ "$cur" == */* ]]; then
|
|
# explicit filename
|
|
_filedir conf
|
|
else
|
|
# config name, /etc/vpnc/<name>.conf
|
|
local IFS=$' \t\n' reset=$(shopt -p nullglob); shopt -s nullglob
|
|
local -a configs=( /etc/vpnc/*.conf )
|
|
configs=( "${configs[@]##*/}" )
|
|
configs=( "${configs[@]%.conf}" )
|
|
$reset
|
|
IFS=$'\n'
|
|
compopt -o filenames
|
|
COMPREPLY=( $( compgen -W '${configs[@]}' -- "$cur" ) )
|
|
fi
|
|
} &&
|
|
complete -F _vpnc vpnc
|
|
|
|
# ex: filetype=sh
|