summaryrefslogtreecommitdiffstats
path: root/mkpasswd.bash
diff options
context:
space:
mode:
Diffstat (limited to 'mkpasswd.bash')
-rw-r--r--mkpasswd.bash33
1 files changed, 33 insertions, 0 deletions
diff --git a/mkpasswd.bash b/mkpasswd.bash
new file mode 100644
index 0000000..2d0b9a6
--- /dev/null
+++ b/mkpasswd.bash
@@ -0,0 +1,33 @@
+_mkpasswd() {
+
+ case $3 in
+ --help | --version | --salt | --rounds | --password-fd | -[hVSRP])
+ return 0
+ ;;
+ --method | -m)
+ COMPREPLY=($(compgen -W '$(
+ LC_ALL=C "$1" --method=help 2>/dev/null |
+ while read -r method _; do
+ [[ $method == Available ]] ||
+ printf "%s\n" "$method"
+ done
+ )'))
+ return 0
+ ;;
+ esac
+
+ if [[ $2 == -* ]]; then
+ COMPREPLY=($(compgen -W '
+ --method
+ -5
+ --salt
+ --rounds
+ --password-fd
+ --stdin
+ --help
+ --version
+ ' -- "$2"))
+ return 0
+ fi
+
+} && complete -F _mkpasswd mkpasswd