Parcourir la source

Check if irc user already exists before adding

Bob Mottram il y a 8 ans
Parent
révision
f15580cc3e
1 fichiers modifiés avec 8 ajouts et 1 suppressions
  1. 8
    1
      src/freedombone-app-irc

+ 8
- 1
src/freedombone-app-irc Voir le fichier

193
     ZNC_SALT="$(dd if=/dev/urandom bs=16c count=1 | md5sum | awk -F ' ' '{print $1}' | cut -c1-20)"
193
     ZNC_SALT="$(dd if=/dev/urandom bs=16c count=1 | md5sum | awk -F ' ' '{print $1}' | cut -c1-20)"
194
     new_user_hash=$(echo -n "${new_user_password}${ZNC_SALT}" | sha256sum | awk -F ' ' '{print $1}')
194
     new_user_hash=$(echo -n "${new_user_password}${ZNC_SALT}" | sha256sum | awk -F ' ' '{print $1}')
195
 
195
 
196
+    if grep -q "<User ${new_username}>" /home/znc/.znc/configs/znc.conf; then
197
+        # user already exists
198
+        sed -i "s|Hash = .*|Hash = ${new_user_hash}|g" /home/znc/.znc/configs/znc.conf
199
+        sed -i "s|Salt = .*|Salt = ${ZNC_SALT}|g" /home/znc/.znc/configs/znc.conf
200
+        return
201
+    fi
202
+
196
     echo "<User ${new_username}>" >> /home/znc/.znc/configs/znc.conf
203
     echo "<User ${new_username}>" >> /home/znc/.znc/configs/znc.conf
197
     echo "    Admin      = ${is_admin}" >> /home/znc/.znc/configs/znc.conf
204
     echo "    Admin      = ${is_admin}" >> /home/znc/.znc/configs/znc.conf
198
     echo "    AltNick = ${new_username}_" >> /home/znc/.znc/configs/znc.conf
205
     echo "    AltNick = ${new_username}_" >> /home/znc/.znc/configs/znc.conf
300
     dialog --title $"IRC Password" \
307
     dialog --title $"IRC Password" \
301
            --clear \
308
            --clear \
302
            --backtitle $"Freedombone Control Panel" \
309
            --backtitle $"Freedombone Control Panel" \
303
-           --passwordbox $"Password for all IRC users, or press Enter for no password" 10 50 2> $data
310
+           --passwordbox $"Password for all IRC users, or press Enter for no password" 10 60 2> $data
304
     sel=$?
311
     sel=$?
305
     case $sel in
312
     case $sel in
306
         0)
313
         0)