mirror of
https://github.com/Gator96100/ProxSpace.git
synced 2025-03-12 04:36:22 -07:00
83 lines
2.3 KiB
Bash
83 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
|