From f8f1b02ea9fed71bf5afb5d8ec2aabb5484cfe85 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D1=80=D1=82=D0=B5=D0=BC=D0=B8=D0=B9?= Date: Sat, 19 Jun 2021 13:31:48 +0300 Subject: [PATCH] implemented back_pwquality --- back_pwquality.sh | 118 +++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 111 insertions(+), 7 deletions(-) diff --git a/back_pwquality.sh b/back_pwquality.sh index a054657..b52ad2c 100644 --- a/back_pwquality.sh +++ b/back_pwquality.sh @@ -7,7 +7,7 @@ _mk_pwquality_conf() { local difok=1 \ minlen=8 \ dcredit=0 \ - uncredit=0 \ + ucredit=0 \ lcredit=0 \ ocredit=0 \ minclass=0 \ @@ -27,15 +27,119 @@ _mk_pwquality_conf() { while [ -n "$1" ]; do case "$1" in --difok) shift; - _check_argument_is_number "$1" "--difok" + _check_argument_is_number "$1" "--difok" + difok="$1" + shift ;; --minlen) shift; - _check_argument_value "$1" "6" "--minlen" + _check_argument_value "$1" "6" "--minlen" + minlen="$1" + shift ;; --dcredit) shift; - _check_argument_is_number "$1" "--dcredit" "-" + _check_argument_is_number "$1" "--dcredit" "-" + dcredit="$1" + shift ;; - esac - done + --ucredit) shift; + _check_argument_is_number "$1" "--ucredit" "-" + ucredit="$1" + shift + ;; + --lcredit) shift; + _check_argument_is_number "$1" "--lcredit" "-" + lcredit="$1" + shift + ;; + --ocredit) shift; + _check_argument_is_number "$1" "--ocredit" "-" + ocredit="$1" + shift + ;; + --minclass) shift; + _check_argument_is_number "$1" "--minclass" + minclass="$1" + shift + ;; + --maxrepeat) shift; + _check_argument_is_number "$1" "--maxrepeat" + maxrepeat="$1" + shift + ;; + --maxsequence) shift; + _check_argument_is_number "$1" "--maxsequence" + maxsequence="$1" + shift + ;; + --maxclassrepeat) shift; + _check_argument_is_number "$1" "--maxclassrepeat" + maxclassrepeat="$1" + ;; + --gecoscheck) shift; + _check_argument_is_number "$1" "--gecoscheck" + [[ "$1" =~ (0|1) ]] || error $"The received parameters are not correct. Expected %s, received %s" $"0 or 1" "$1" + geoscheck="$1" + shift + ;; + --dictcheck) shift; + _check_argument_is_number "$1" "--dictcheck" + [[ "$1" =~ (0|1) ]] || error $"The received parameters are not correct. Expected %s, received %s" $"0 or 1" "$1" + dickcheck="$1" + shift + ;; + --usercheck) shift; + _check_argument_is_number "$1" "--usercheck" + [[ "$1" =~ (0|1) ]] || error $"The received parameters are not correct. Expected %s, received %s" $"0 or 1" "$1" + usercheck="$1" + shift + ;; + --usersubstr) shift; + _check_argument_is_number "$1" "--usersubstr" + usersubstr="$1" + shift + ;; + --enforcing) shift; + _check_argument_is_number "$1" "--enforcing" + [[ "$1" =~ (0|1) ]] || error $"The received parameters are not correct. Expected %s, received %s" $"0 or 1" "$1" + enforcing="$1" + shift + ;; + --retry) shift; + _check_argument_is_number "$1" "--retry" + shift + ;; + --enforce_for_root) shift; + _check_argument_is_number "$1" "--enforce_for_root" + [[ "$1" =~ (0|1) ]] || error $"The received parameters are not correct. Expected %s, received %s" $"0 or 1" "$1" + enforce_for_root="$1" + shift + ;; + --local_users_only) shift; + _check_argument_is_number "$1" "--local_users_only" + [[ "$1" =~ (0|1) ]] || error $"The received parameters are not correct. Expected %s, received %s" $"0 or 1" "$1" + local_users_only="$1" + shift + ;; + esac + done +cat <