# 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)
            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
            ;;
        --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
            ;;
    esac

    if [[ "$cur" == -* ]]; then
        COMPREPLY=( $( compgen -W '$( _parse_help "$1" --long-help )' \
            -- "$cur" ) )
    else
        COMPREPLY=( $( compgen -W '$( command ls /etc/vpnc )' -- "$cur" ) )
    fi
} &&
complete -F _vpnc vpnc

# ex: filetype=sh
