mirror of
https://github.com/torvalds/linux.git
synced 2026-03-14 02:06:15 +01:00
bpftool: Add bash completion for program signing options
Commit 40863f4d6e ("bpftool: Add support for signing BPF programs")
added new options for "bpftool prog load" and "bpftool gen skeleton".
This commit brings the relevant update to the bash completion file.
We rework slightly the processing of options to make completion more
resilient for options that take an argument.
Signed-off-by: Quentin Monnet <qmo@kernel.org>
Link: https://lore.kernel.org/r/20250923103802.57695-1-qmo@kernel.org
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
This commit is contained in:
parent
f0b5c1490a
commit
0d3bf643b4
1 changed files with 17 additions and 9 deletions
|
|
@ -262,7 +262,7 @@ _bpftool()
|
|||
# Deal with options
|
||||
if [[ ${words[cword]} == -* ]]; then
|
||||
local c='--version --json --pretty --bpffs --mapcompat --debug \
|
||||
--use-loader --base-btf'
|
||||
--use-loader --base-btf --sign -i -k'
|
||||
COMPREPLY=( $( compgen -W "$c" -- "$cur" ) )
|
||||
return 0
|
||||
fi
|
||||
|
|
@ -283,7 +283,7 @@ _bpftool()
|
|||
_sysfs_get_netdevs
|
||||
return 0
|
||||
;;
|
||||
file|pinned|-B|--base-btf)
|
||||
file|pinned|-B|--base-btf|-i|-k)
|
||||
_filedir
|
||||
return 0
|
||||
;;
|
||||
|
|
@ -296,13 +296,21 @@ _bpftool()
|
|||
# Remove all options so completions don't have to deal with them.
|
||||
local i pprev
|
||||
for (( i=1; i < ${#words[@]}; )); do
|
||||
if [[ ${words[i]::1} == - ]] &&
|
||||
[[ ${words[i]} != "-B" ]] && [[ ${words[i]} != "--base-btf" ]]; then
|
||||
words=( "${words[@]:0:i}" "${words[@]:i+1}" )
|
||||
[[ $i -le $cword ]] && cword=$(( cword - 1 ))
|
||||
else
|
||||
i=$(( ++i ))
|
||||
fi
|
||||
case ${words[i]} in
|
||||
# Remove option and its argument
|
||||
-B|--base-btf|-i|-k)
|
||||
words=( "${words[@]:0:i}" "${words[@]:i+2}" )
|
||||
[[ $i -le $(($cword + 1)) ]] && cword=$(( cword - 2 ))
|
||||
;;
|
||||
# No argument, remove option only
|
||||
-*)
|
||||
words=( "${words[@]:0:i}" "${words[@]:i+1}" )
|
||||
[[ $i -le $cword ]] && cword=$(( cword - 1 ))
|
||||
;;
|
||||
*)
|
||||
i=$(( ++i ))
|
||||
;;
|
||||
esac
|
||||
done
|
||||
cur=${words[cword]}
|
||||
prev=${words[cword - 1]}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue