PDA

View Full Version : Hash-completion not working 100% after upgrading VM.



kawaxi
2017-04-01, 02:21
Greetings

I've noticed some glitchy behavior in Kali VM after upgrading, before making a bug report I want to make sure this is something not normal, this time I wan to focus on bash-completion.

Let's Assume I have in my home folder a file named lab.somepentest.conf which is my VPN config file, so on my kali before upgrading doing
openvpn lab.so (tab) will complete the file name as it should be.

In other hand after doing apt-get update && apt-get upgrade , bash-completion will not complete this file name using
openvpn lab. (tab) , however bash-completion it will still work with other commands.

Upgraded Kali:

Linux kali 4.9.0-kali3-686-pae #1 SMP Debian 4.9.16-1kali1 (2017-03-24) i686 GNU/Linux


Does anyone has a clue on how to fix or correct this problem?


Debug info on Faulty bash-completion using set -x gives:


openvpn la+ local compfile=./completions
+ [[ /usr/share/bash-completion/bash_completion == */* ]]
+ compfile=/usr/share/bash-completion/completions
+ compfile+=/openvpn
+ [[ -f /usr/share/bash-completion/completions/openvpn ]]
+ . /usr/share/bash-completion/completions/openvpn
+ return 124



While doing the same on a working Bash-completion


openvpn la+ local compfile=./completions
+ [[ /usr/share/bash-completion/bash_completion == */* ]]
+ compfile=/usr/share/bash-completion/completions
+ compfile+=/openvpn
+ [[ -f /usr/share/bash-completion/completions/openvpn ]]
+ complete -F _minimal openvpn
+ return 124
+ local cur prev words cword split
+ _init_completion -s
+ local exclude= flag outx errx inx OPTIND=1
+ getopts n:e:o:i:s flag -s
+ case $flag in
+ split=false
+ exclude+==
+ getopts n:e:o:i:s flag -s
+ COMPREPLY=()
+ local 'redir=@(?([0-9])<|?([0-9&])>?(>)|>&)'
+ _get_comp_words_by_ref -n '=<>&' cur prev words cword
+ local exclude flag i OPTIND=1
+ words=()
+ local cur cword words
+ upargs=()
+ upvars=()
+ local upargs upvars vcur vcword vprev vwords
+ getopts c:i:n:p:w: flag -n '=<>&' cur prev words cword
+ case $flag in
+ exclude='=<>&'
+ getopts c:i:n:p:w: flag -n '=<>&' cur prev words cword
+ [[ 6 -ge 3 ]]
+ case ${!OPTIND} in
+ vcur=cur
...........


Using the following does resolve the problem just in current session.
complete -F _minimal openvpn