From d64d747e03263090c07f8d52f771210b96fa77cc Mon Sep 17 00:00:00 2001 From: Bob Mottram Date: Wed, 23 Dec 2015 13:39:00 +0000 Subject: [PATCH] Changing user passwords --- src/freedombone-controlpanel | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/src/freedombone-controlpanel b/src/freedombone-controlpanel index 36a3a6a0..36d91856 100755 --- a/src/freedombone-controlpanel +++ b/src/freedombone-controlpanel @@ -40,6 +40,9 @@ ADMIN_USER= UPGRADE_SCRIPT_NAME="${PROJECT_NAME}-upgrade" UPDATE_DATE_SCRIPT=/usr/bin/updatedate +# Minimum number of characters in a password +MINIMUM_PASSWORD_LENGTH=8 + USB_DRIVE=sdb # get default USB from config file CONFIG_FILE=$HOME/${PROJECT_NAME}.cfg @@ -196,12 +199,20 @@ function change_password { if [ ! $SELECTED_USERNAME ]; then return fi - clear - echo -n $"Change password for" - echo " $SELECTED_USERNAME" - echo "" - su -c "passwd" - $SELECTED_USERNAME - any_key + + dialog --title $"Change password" \ + --passwordbox $"New password for user $SELECTED_USERNAME" 8 40 2> $data + newpassword=$(<$data) + if [ ${#newpassword} -lt ${MINIMUM_PASSWORD_LENGTH} ]; then + dialog --title $"Change password" \ + --msgbox $"The password should be ${MINIMUM_PASSWORD_LENGTH} or more characters" 6 40 + return + fi + + echo "$SELECTED_USERNAME:$newpassword"|chpasswd + + dialog --title $"Change password" \ + --msgbox $"Password for $SELECTED_USERNAME was changed" 6 40 } function irc_set_global_password {