# bash completion for checksec                             -*- shell-script -*-

_checksec()
{
    local cur prev words cword split
    _init_completion -s || return

    case $prev in
        --version | --help)
            return
            ;;
        --file | --fortify-file)
            _filedir
            return
            ;;
        --dir)
            _filedir -d
            return
            ;;
        --proc)
            _pnames
            return
            ;;
        --proc-libs | --fortify-proc)
            _pids
            return
            ;;
        --format)
            COMPREPLY=($(compgen -W '$($1 --help 2>/dev/null |
                command sed \
                     -e "s/[{,}]/ /g" \
                    -ne "s/^[[:space:]]*--format=//p"
                )' -- "$cur"))
            ;;
        --output)
            COMPREPLY=($(compgen -W '$($1 --help 2>/dev/null |
                command sed \
                     -e "s/[{,}]/ /g" \
                    -ne "s/^[[:space:]]*--output=//p"
                )' -- "$cur"))
            ;;
    esac

    $split && return

    if [[ $cur == -* ]]; then
        COMPREPLY=($(compgen -W '$(_parse_help "$1")' -- "$cur"))
        [[ ${COMPREPLY-} == *= ]] && compopt -o nospace
        return
    fi
} &&
    complete -F _checksec checksec

# ex: filetype=sh
