Browse Source

Changing user passwords

Bob Mottram 9 years ago
parent
commit
d64d747e03
1 changed files with 17 additions and 6 deletions
  1. 17
    6
      src/freedombone-controlpanel

+ 17
- 6
src/freedombone-controlpanel View File

40
 UPGRADE_SCRIPT_NAME="${PROJECT_NAME}-upgrade"
40
 UPGRADE_SCRIPT_NAME="${PROJECT_NAME}-upgrade"
41
 UPDATE_DATE_SCRIPT=/usr/bin/updatedate
41
 UPDATE_DATE_SCRIPT=/usr/bin/updatedate
42
 
42
 
43
+# Minimum number of characters in a password
44
+MINIMUM_PASSWORD_LENGTH=8
45
+
43
 USB_DRIVE=sdb
46
 USB_DRIVE=sdb
44
 # get default USB from config file
47
 # get default USB from config file
45
 CONFIG_FILE=$HOME/${PROJECT_NAME}.cfg
48
 CONFIG_FILE=$HOME/${PROJECT_NAME}.cfg
196
     if [ ! $SELECTED_USERNAME ]; then
199
     if [ ! $SELECTED_USERNAME ]; then
197
         return
200
         return
198
     fi
201
     fi
199
-    clear
200
-    echo -n $"Change password for"
201
-    echo " $SELECTED_USERNAME"
202
-    echo ""
203
-    su -c "passwd" - $SELECTED_USERNAME
204
-    any_key
202
+
203
+    dialog --title $"Change password" \
204
+           --passwordbox $"New password for user $SELECTED_USERNAME" 8 40 2> $data
205
+    newpassword=$(<$data)
206
+    if [ ${#newpassword} -lt ${MINIMUM_PASSWORD_LENGTH} ]; then
207
+        dialog --title $"Change password" \
208
+               --msgbox $"The password should be ${MINIMUM_PASSWORD_LENGTH} or more characters" 6 40
209
+        return
210
+    fi
211
+
212
+    echo "$SELECTED_USERNAME:$newpassword"|chpasswd
213
+
214
+    dialog --title $"Change password" \
215
+           --msgbox $"Password for $SELECTED_USERNAME was changed" 6 40
205
 }
216
 }
206
 
217
 
207
 function irc_set_global_password {
218
 function irc_set_global_password {