From 020d6bfaef721bd8762df33d8cb15f85a87fadcb Mon Sep 17 00:00:00 2001 From: Bob Mottram Date: Fri, 12 Feb 2016 19:45:02 +0000 Subject: [PATCH] Don't allow removal of reserved usernames --- src/freedombone-rmuser | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/src/freedombone-rmuser b/src/freedombone-rmuser index 7a024762..650ee593 100755 --- a/src/freedombone-rmuser +++ b/src/freedombone-rmuser @@ -42,37 +42,42 @@ if [ ! $MY_USERNAME ]; then exit 1 fi +if [[ $MY_USERNAME == 'git' || $MY_USERNAME == 'mirrors' ]]; then + echo $'Cannot remove reserved users' + exit 2 +fi + if [ ! -d /home/$MY_USERNAME ]; then echo $"Home directory does not exist for $MY_USERNAME" - exit 2 + exit 3 fi if [ ! -f $COMPLETION_FILE ]; then echo $"$COMPLETION_FILE not found" - exit 3 + exit 4 fi if ! grep -q "Admin user" $COMPLETION_FILE; then echo $"No admin user specified in $COMPLETION_FILE" - exit 4 + exit 5 fi ADMIN_USERNAME=$(cat $COMPLETION_FILE | grep "Admin user" | awk -F ':' '{print $2}') if [ ! $ADMIN_USERNAME ]; then echo $"No admin username specified in $COMPLETION_FILE" - exit 5 + exit 6 fi if [[ $MY_USERNAME == $ADMIN_USERNAME ]]; then echo $"The administrator user cannot be removed" - exit 6 + exit 7 fi echo $'>>> REMOVE USER <<<' read -p $"Do you really wish to remove the user '$MY_USERNAME' (y/n) ?" yn if [[ $yn != 'y' && $yn != 'Y' && $yn != 'yes' && $yn != 'Yes' && $yn != 'YES' ]]; then echo $"User $MY_USERNAME was not removed" - exit 7 + exit 8 fi if grep -q "install_xmpp" $COMPLETION_FILE; then