Przeglądaj źródła

Remove temporary files after use

Bob Mottram 7 lat temu
rodzic
commit
a56fade1d5
2 zmienionych plików z 187 dodań i 60 usunięć
  1. 115
    36
      src/freedombone-controlpanel
  2. 72
    24
      src/freedombone-controlpanel-user

+ 115
- 36
src/freedombone-controlpanel Wyświetl plik

13
 # License
13
 # License
14
 # =======
14
 # =======
15
 #
15
 #
16
-# Copyright (C) 2015-2017 Bob Mottram <bob@freedombone.net>
16
+# Copyright (C) 2015-2018 Bob Mottram <bob@freedombone.net>
17
 #
17
 #
18
 # This program is free software: you can redistribute it and/or modify
18
 # This program is free software: you can redistribute it and/or modify
19
 # it under the terms of the GNU Affero General Public License as published by
19
 # it under the terms of the GNU Affero General Public License as published by
166
             fi
166
             fi
167
             ;;
167
             ;;
168
     esac
168
     esac
169
+    rm $data
169
 }
170
 }
170
 
171
 
171
 function get_app_icann_address {
172
 function get_app_icann_address {
304
             fi
305
             fi
305
             ;;
306
             ;;
306
     esac
307
     esac
307
-
308
+    rm $data
308
 }
309
 }
309
 
310
 
310
 function check_for_updates {
311
 function check_for_updates {
330
            2> $data
331
            2> $data
331
     sel=$?
332
     sel=$?
332
     case $sel in
333
     case $sel in
333
-        1) return;;
334
-        255) return;;
334
+        1) rm $data
335
+           return;;
336
+        255) rm $data
337
+             return;;
335
     esac
338
     esac
336
     new_user_username=$(cat $data | sed -n 1p)
339
     new_user_username=$(cat $data | sed -n 1p)
337
     new_user_ssh_public_key=$(cat $data | sed -n 2p)
340
     new_user_ssh_public_key=$(cat $data | sed -n 2p)
338
     if [ ${#new_user_username} -lt 2 ]; then
341
     if [ ${#new_user_username} -lt 2 ]; then
339
         dialog --title $"New username" \
342
         dialog --title $"New username" \
340
                --msgbox $"No username was given" 6 40
343
                --msgbox $"No username was given" 6 40
344
+        rm $data
341
         return
345
         return
342
     fi
346
     fi
343
     if [[ "$new_user_username" == *" "* ]]; then
347
     if [[ "$new_user_username" == *" "* ]]; then
344
         dialog --title $"Invalid username" \
348
         dialog --title $"Invalid username" \
345
                --msgbox $"The username should not contain any spaces" 6 40
349
                --msgbox $"The username should not contain any spaces" 6 40
350
+        rm $data
346
         return
351
         return
347
     fi
352
     fi
348
     if [ ${#new_user_ssh_public_key} -lt 20 ]; then
353
     if [ ${#new_user_ssh_public_key} -lt 20 ]; then
359
                    --msgbox $"This does not look like an ssh public key" 6 40
364
                    --msgbox $"This does not look like an ssh public key" 6 40
360
         fi
365
         fi
361
     fi
366
     fi
367
+    rm $data
362
 }
368
 }
363
 
369
 
364
 function pad_string {
370
 function pad_string {
742
             fi
748
             fi
743
             ;;
749
             ;;
744
     esac
750
     esac
751
+    rm $data
745
 }
752
 }
746
 
753
 
747
 function remove_user_from_mailing_list {
754
 function remove_user_from_mailing_list {
848
            2> $data
855
            2> $data
849
     sel=$?
856
     sel=$?
850
     case $sel in
857
     case $sel in
851
-        1) return;;
852
-        255) return;;
858
+        1)  rm $data
859
+            return;;
860
+        255) rm $data
861
+             return;;
853
     esac
862
     esac
854
     LIST_NAME=$(cat $data | sed -n 1p)
863
     LIST_NAME=$(cat $data | sed -n 1p)
855
     LIST_SUBJECT=$(cat $data | sed -n 2p)
864
     LIST_SUBJECT=$(cat $data | sed -n 2p)
867
     if [ ${#LIST_NAME} -lt 2 ]; then
876
     if [ ${#LIST_NAME} -lt 2 ]; then
868
         dialog --title $"Add mailing list" \
877
         dialog --title $"Add mailing list" \
869
                --msgbox $"No mailing list name was given" 6 40
878
                --msgbox $"No mailing list name was given" 6 40
879
+        rm $data
870
         return
880
         return
871
     fi
881
     fi
872
     if [ ${#LIST_SUBJECT} -lt 2 ]; then
882
     if [ ${#LIST_SUBJECT} -lt 2 ]; then
873
         if [ ${#LIST_EMAIL} -lt 2 ]; then
883
         if [ ${#LIST_EMAIL} -lt 2 ]; then
874
             dialog --title $"Add mailing list" \
884
             dialog --title $"Add mailing list" \
875
                    --msgbox $"No mailing list subject or address was given" 6 40
885
                    --msgbox $"No mailing list subject or address was given" 6 40
886
+            rm $data
876
             return
887
             return
877
         fi
888
         fi
878
     fi
889
     fi
883
         if [[ "$LIST_EMAIL" != *"@"* || "$LIST_EMAIL" != *"."* ]]; then
894
         if [[ "$LIST_EMAIL" != *"@"* || "$LIST_EMAIL" != *"."* ]]; then
884
             dialog --title $"Add mailing list" \
895
             dialog --title $"Add mailing list" \
885
                    --msgbox $"Unrecognised email address" 6 40
896
                    --msgbox $"Unrecognised email address" 6 40
897
+            rm $data
886
             return
898
             return
887
         else
899
         else
888
             ${PROJECT_NAME}-addlist -u $SELECTED_USERNAME -l "$LIST_NAME" \
900
             ${PROJECT_NAME}-addlist -u $SELECTED_USERNAME -l "$LIST_NAME" \
892
 
904
 
893
     dialog --title $"Add mailing list" \
905
     dialog --title $"Add mailing list" \
894
            --msgbox $"$LIST_NAME list was added" 6 40
906
            --msgbox $"$LIST_NAME list was added" 6 40
907
+    rm $data
895
 }
908
 }
896
 
909
 
897
 function email_rule {
910
 function email_rule {
910
            2> $data
923
            2> $data
911
     sel=$?
924
     sel=$?
912
     case $sel in
925
     case $sel in
913
-        1) return;;
914
-        255) return;;
926
+        1) rm $data
927
+           return;;
928
+        255) rm $data
929
+             return;;
915
     esac
930
     esac
916
     RULE_EMAIL=$(cat $data | sed -n 1p)
931
     RULE_EMAIL=$(cat $data | sed -n 1p)
917
     RULE_FOLDER=$(cat $data | sed -n 2p)
932
     RULE_FOLDER=$(cat $data | sed -n 2p)
928
     if [ ${#RULE_EMAIL} -lt 2 ]; then
943
     if [ ${#RULE_EMAIL} -lt 2 ]; then
929
         dialog --title $"Add email rule" \
944
         dialog --title $"Add email rule" \
930
                --msgbox $"No email address was given" 6 40
945
                --msgbox $"No email address was given" 6 40
946
+        rm $data
931
         return
947
         return
932
     fi
948
     fi
933
     if [ ${#RULE_FOLDER} -lt 2 ]; then
949
     if [ ${#RULE_FOLDER} -lt 2 ]; then
934
         dialog --title $"Add email rule" \
950
         dialog --title $"Add email rule" \
935
                --msgbox $"No folder name was given" 6 40
951
                --msgbox $"No folder name was given" 6 40
952
+        rm $data
936
         return
953
         return
937
     fi
954
     fi
938
     if [[ "$RULE_EMAIL" != *"@"* || "$RULE_EMAIL" != *"."* ]]; then
955
     if [[ "$RULE_EMAIL" != *"@"* || "$RULE_EMAIL" != *"."* ]]; then
939
         dialog --title $"Add email rule" \
956
         dialog --title $"Add email rule" \
940
                --msgbox $"Unrecognised email address" 6 40
957
                --msgbox $"Unrecognised email address" 6 40
958
+        rm $data
941
         return
959
         return
942
     fi
960
     fi
943
 
961
 
945
                    -g "$RULE_FOLDER" --public $RULE_PUBLIC
963
                    -g "$RULE_FOLDER" --public $RULE_PUBLIC
946
     dialog --title $"Add email rule" \
964
     dialog --title $"Add email rule" \
947
            --msgbox $"Email rule for $RULE_EMAIL was added" 6 40
965
            --msgbox $"Email rule for $RULE_EMAIL was added" 6 40
966
+    rm $data
948
 }
967
 }
949
 
968
 
950
 function block_unblock_email {
969
 function block_unblock_email {
963
            2> $data
982
            2> $data
964
     sel=$?
983
     sel=$?
965
     case $sel in
984
     case $sel in
966
-        1) return;;
967
-        255) return;;
985
+        1) rm $data
986
+           return;;
987
+        255) rm $data
988
+             return;;
968
     esac
989
     esac
969
     BLOCK_EMAIL=$(cat $data | sed -n 1p)
990
     BLOCK_EMAIL=$(cat $data | sed -n 1p)
970
     BLOCK=$(cat $data | sed -n 2p)
991
     BLOCK=$(cat $data | sed -n 2p)
971
     if [ ${#BLOCK_EMAIL} -lt 2 ]; then
992
     if [ ${#BLOCK_EMAIL} -lt 2 ]; then
972
         dialog --title $"Block/Unblock an email" \
993
         dialog --title $"Block/Unblock an email" \
973
                --msgbox $"No email address was given" 6 40
994
                --msgbox $"No email address was given" 6 40
995
+        rm $data
974
         return
996
         return
975
     fi
997
     fi
976
     if [[ "$BLOCK_EMAIL" != *"@"* || "$BLOCK_EMAIL" != *"."* ]]; then
998
     if [[ "$BLOCK_EMAIL" != *"@"* || "$BLOCK_EMAIL" != *"."* ]]; then
977
         dialog --title $"Block/Unblock an email" \
999
         dialog --title $"Block/Unblock an email" \
978
                --msgbox $"Unrecognised email address" 6 40
1000
                --msgbox $"Unrecognised email address" 6 40
1001
+        rm $data
979
         return
1002
         return
980
     fi
1003
     fi
981
     if [[ $BLOCK == "y"* || $BLOCK == "Y"* ]]; then
1004
     if [[ $BLOCK == "y"* || $BLOCK == "Y"* ]]; then
987
         dialog --title $"Unblock an email" \
1010
         dialog --title $"Unblock an email" \
988
                --msgbox "Email from $BLOCK_EMAIL to $SELECTED_USERNAME unblocked" 6 75
1011
                --msgbox "Email from $BLOCK_EMAIL to $SELECTED_USERNAME unblocked" 6 75
989
     fi
1012
     fi
1013
+    rm $data
990
 }
1014
 }
991
 
1015
 
992
 function block_unblock_subject {
1016
 function block_unblock_subject {
1005
            2> $data
1029
            2> $data
1006
     sel=$?
1030
     sel=$?
1007
     case $sel in
1031
     case $sel in
1008
-        1) return;;
1009
-        255) return;;
1032
+        1) rm $data
1033
+           return;;
1034
+        255) rm $data
1035
+             return;;
1010
     esac
1036
     esac
1011
     BLOCK_SUBJECT=$(cat $data | sed -n 1p)
1037
     BLOCK_SUBJECT=$(cat $data | sed -n 1p)
1012
     BLOCK=$(cat $data | sed -n 2p)
1038
     BLOCK=$(cat $data | sed -n 2p)
1013
     if [ ${#BLOCK_SUBJECT} -lt 2 ]; then
1039
     if [ ${#BLOCK_SUBJECT} -lt 2 ]; then
1014
         dialog --title $"Block/Unblock an email" \
1040
         dialog --title $"Block/Unblock an email" \
1015
                --msgbox $"No subject was given" 6 40
1041
                --msgbox $"No subject was given" 6 40
1042
+        rm $data
1016
         return
1043
         return
1017
     fi
1044
     fi
1018
     if [[ $BLOCK == "y"* || $BLOCK == "Y"* ]]; then
1045
     if [[ $BLOCK == "y"* || $BLOCK == "Y"* ]]; then
1024
         dialog --title $"Unblock an email" \
1051
         dialog --title $"Unblock an email" \
1025
                --msgbox "Email with subject $BLOCK_SUBJECT to $SELECTED_USERNAME unblocked" 6 40
1052
                --msgbox "Email with subject $BLOCK_SUBJECT to $SELECTED_USERNAME unblocked" 6 40
1026
     fi
1053
     fi
1054
+    rm $data
1027
 }
1055
 }
1028
 
1056
 
1029
 function create_keydrive_master {
1057
 function create_keydrive_master {
1226
             friend_server_domain_name=$(<$data)
1254
             friend_server_domain_name=$(<$data)
1227
 
1255
 
1228
             if [ ${#friend_server_domain_name} -lt 2 ]; then
1256
             if [ ${#friend_server_domain_name} -lt 2 ]; then
1257
+                rm $data
1229
                 return
1258
                 return
1230
             fi
1259
             fi
1231
 
1260
 
1232
             if [[ $friend_server_domain_name != *"."* ]]; then
1261
             if [[ $friend_server_domain_name != *"."* ]]; then
1233
                 dialog --title $"Remote server domain name" \
1262
                 dialog --title $"Remote server domain name" \
1234
                        --msgbox $"Invalid domain name" 6 40
1263
                        --msgbox $"Invalid domain name" 6 40
1264
+                rm $data
1235
                 return
1265
                 return
1236
             fi
1266
             fi
1237
 
1267
 
1238
             restore_data_from_storage $friend_server_domain_name
1268
             restore_data_from_storage $friend_server_domain_name
1239
             ;;
1269
             ;;
1240
     esac
1270
     esac
1271
+    rm $data
1241
 }
1272
 }
1242
 
1273
 
1243
 function ping_enable_disable {
1274
 function ping_enable_disable {
1387
            --yesno $"\nPlease confirm that you wish to format drive\n\n    ${USB_DRIVE}\n\nAll current data on the drive will be lost, and you will be prompted to give a password used to encrypt the drive.\n\nDANGER: If you screw up here and format the wrong drive it's your own fault!" 16 60
1418
            --yesno $"\nPlease confirm that you wish to format drive\n\n    ${USB_DRIVE}\n\nAll current data on the drive will be lost, and you will be prompted to give a password used to encrypt the drive.\n\nDANGER: If you screw up here and format the wrong drive it's your own fault!" 16 60
1388
     sel=$?
1419
     sel=$?
1389
     case $sel in
1420
     case $sel in
1390
-        1) return;;
1391
-        255) return;;
1421
+        1) rm $data
1422
+           return;;
1423
+        255) rm $data
1424
+             return;;
1392
     esac
1425
     esac
1393
 
1426
 
1394
     clear
1427
     clear
1397
     echo ''
1430
     echo ''
1398
     ${PROJECT_NAME}-format $USB_DRIVE
1431
     ${PROJECT_NAME}-format $USB_DRIVE
1399
     any_key
1432
     any_key
1433
+    rm $data
1400
 }
1434
 }
1401
 
1435
 
1402
 function remove_backups {
1436
 function remove_backups {
1409
            --yesno $"\nPlease confirm that you wish to remove backups from this drive\n\n    ${drive}\n\nYou will not be able to recover them afterwards." 12 60
1443
            --yesno $"\nPlease confirm that you wish to remove backups from this drive\n\n    ${drive}\n\nYou will not be able to recover them afterwards." 12 60
1410
     sel=$?
1444
     sel=$?
1411
     case $sel in
1445
     case $sel in
1412
-        1) return;;
1413
-        255) return;;
1446
+        1) rm $data
1447
+           return;;
1448
+        255) rm $data
1449
+             return;;
1414
     esac
1450
     esac
1415
 
1451
 
1416
     clear
1452
     clear
1417
     ${PROJECT_NAME}-backup-local $USB_DRIVE remove
1453
     ${PROJECT_NAME}-backup-local $USB_DRIVE remove
1418
     any_key
1454
     any_key
1455
+    rm $data
1419
 }
1456
 }
1420
 
1457
 
1421
 function shut_down_system {
1458
 function shut_down_system {
1465
            fi
1502
            fi
1466
            ;;
1503
            ;;
1467
     esac
1504
     esac
1505
+    rm $data
1468
 }
1506
 }
1469
 
1507
 
1470
 function set_dynamic_IP {
1508
 function set_dynamic_IP {
1515
         0) NEW_STATIC_IP=$(<$data)
1553
         0) NEW_STATIC_IP=$(<$data)
1516
            if [[ "$NEW_STATIC_IP" != *"."* ]]; then
1554
            if [[ "$NEW_STATIC_IP" != *"."* ]]; then
1517
                set_dynamic_IP
1555
                set_dynamic_IP
1556
+               rm $data
1518
                return
1557
                return
1519
            fi
1558
            fi
1520
            ;;
1559
            ;;
1521
-        1) return;;
1560
+        1) rm $data
1561
+           return;;
1522
     esac
1562
     esac
1563
+    rm $data
1523
 
1564
 
1524
     # get the gateway
1565
     # get the gateway
1525
     data=$(tempfile 2>/dev/null)
1566
     data=$(tempfile 2>/dev/null)
1531
     case $sel in
1572
     case $sel in
1532
         0) NEW_STATIC_GATEWAY=$(<$data)
1573
         0) NEW_STATIC_GATEWAY=$(<$data)
1533
            if [[ "$NEW_STATIC_GATEWAY" != *"."* ]]; then
1574
            if [[ "$NEW_STATIC_GATEWAY" != *"."* ]]; then
1575
+               rm $data
1534
                return
1576
                return
1535
            fi
1577
            fi
1536
            ;;
1578
            ;;
1537
-        1) return;;
1579
+        1) rm $data
1580
+           return;;
1538
     esac
1581
     esac
1539
 
1582
 
1540
     if [[ "$NEW_STATIC_GATEWAY" == *"."* && "$NEW_STATIC_IP" == *"."* ]]; then
1583
     if [[ "$NEW_STATIC_GATEWAY" == *"."* && "$NEW_STATIC_IP" == *"."* ]]; then
1604
             esac
1647
             esac
1605
         fi
1648
         fi
1606
     fi
1649
     fi
1650
+    rm $data
1607
 }
1651
 }
1608
 
1652
 
1609
 function wifi_settings {
1653
 function wifi_settings {
1662
            2> $data
1706
            2> $data
1663
     sel=$?
1707
     sel=$?
1664
     case $sel in
1708
     case $sel in
1665
-        1) return;;
1666
-        255) return;;
1709
+        1) rm $data
1710
+           return;;
1711
+        255) rm $data
1712
+             return;;
1667
     esac
1713
     esac
1668
     TEMP_WIFI_HOTSPOT=$(cat $data | sed -n 1p)
1714
     TEMP_WIFI_HOTSPOT=$(cat $data | sed -n 1p)
1669
     TEMP_WIFI_SSID=$(cat $data | sed -n 2p)
1715
     TEMP_WIFI_SSID=$(cat $data | sed -n 2p)
1671
     TEMP_WIFI_PASSPHRASE=$(cat $data | sed -n 4p)
1717
     TEMP_WIFI_PASSPHRASE=$(cat $data | sed -n 4p)
1672
 
1718
 
1673
     if [ ${#TEMP_WIFI_SSID} -lt 2 ]; then
1719
     if [ ${#TEMP_WIFI_SSID} -lt 2 ]; then
1720
+        rm $data
1674
         return
1721
         return
1675
     fi
1722
     fi
1676
     if [ ${#TEMP_WIFI_TYPE} -lt 2 ]; then
1723
     if [ ${#TEMP_WIFI_TYPE} -lt 2 ]; then
1724
+        rm $data
1677
         return
1725
         return
1678
     fi
1726
     fi
1679
 
1727
 
1691
         if [ ! $TEMP_WIFI_PASSPHRASE ]; then
1739
         if [ ! $TEMP_WIFI_PASSPHRASE ]; then
1692
             dialog --title $"Wifi Settings" \
1740
             dialog --title $"Wifi Settings" \
1693
                    --msgbox $"No wifi hotspot passphrase was given" 6 40
1741
                    --msgbox $"No wifi hotspot passphrase was given" 6 40
1742
+            rm $data
1694
             return
1743
             return
1695
         fi
1744
         fi
1696
         if [ ${#TEMP_WIFI_PASSPHRASE} -lt 2 ]; then
1745
         if [ ${#TEMP_WIFI_PASSPHRASE} -lt 2 ]; then
1697
             dialog --title $"Wifi Settings" \
1746
             dialog --title $"Wifi Settings" \
1698
                    --msgbox $"Wifi hotspot passphrase was too short" 6 40
1747
                    --msgbox $"Wifi hotspot passphrase was too short" 6 40
1748
+            rm $data
1699
             return
1749
             return
1700
         fi
1750
         fi
1701
 
1751
 
1726
 
1776
 
1727
     dialog --title $"Wifi Settings" \
1777
     dialog --title $"Wifi Settings" \
1728
            --msgbox $"Hotspot settings were changed" 6 40
1778
            --msgbox $"Hotspot settings were changed" 6 40
1779
+    rm $data
1729
 }
1780
 }
1730
 
1781
 
1731
 function reinstall_mariadb {
1782
 function reinstall_mariadb {
1792
             fi
1843
             fi
1793
             ;;
1844
             ;;
1794
     esac
1845
     esac
1846
+    rm $data
1795
 }
1847
 }
1796
 
1848
 
1797
 function email_smtp_proxy {
1849
 function email_smtp_proxy {
1823
     SMTP_PROXY_PORT=$(cat $data | sed -n 4p)
1875
     SMTP_PROXY_PORT=$(cat $data | sed -n 4p)
1824
     SMTP_PROXY_USERNAME=$(cat $data | sed -n 5p)
1876
     SMTP_PROXY_USERNAME=$(cat $data | sed -n 5p)
1825
     SMTP_PROXY_PASSWORD=$(cat $data | sed -n 6p)
1877
     SMTP_PROXY_PASSWORD=$(cat $data | sed -n 6p)
1878
+    rm $data
1826
 
1879
 
1827
     # change muttrc
1880
     # change muttrc
1828
     if [ $SMTP_PROXY_ENABLE != $'no' ]; then
1881
     if [ $SMTP_PROXY_ENABLE != $'no' ]; then
1868
                11 $"Back to main menu" on 2> $data
1921
                11 $"Back to main menu" on 2> $data
1869
         sel=$?
1922
         sel=$?
1870
         case $sel in
1923
         case $sel in
1871
-            1) break;;
1872
-            255) break;;
1924
+            1) rm $data
1925
+               break;;
1926
+            255) rm $data
1927
+                 break;;
1873
         esac
1928
         esac
1874
         case $(cat $data) in
1929
         case $(cat $data) in
1875
             1) backup_data;;
1930
             1) backup_data;;
1884
             10) remove_backups;;
1939
             10) remove_backups;;
1885
             11) break;;
1940
             11) break;;
1886
         esac
1941
         esac
1942
+        rm $data
1887
     done
1943
     done
1888
 }
1944
 }
1889
 
1945
 
1905
                8 $"Back to main menu" on 2> $data
1961
                8 $"Back to main menu" on 2> $data
1906
         sel=$?
1962
         sel=$?
1907
         case $sel in
1963
         case $sel in
1908
-            1) break;;
1909
-            255) break;;
1964
+            1) rm $data
1965
+               break;;
1966
+            255) rm $data
1967
+                 break;;
1910
         esac
1968
         esac
1911
         case $(cat $data) in
1969
         case $(cat $data) in
1912
             1) add_to_mailing_list;;
1970
             1) add_to_mailing_list;;
1918
             7) email_extra_domains;;
1976
             7) email_extra_domains;;
1919
             8) break;;
1977
             8) break;;
1920
         esac
1978
         esac
1979
+        rm $data
1921
     done
1980
     done
1922
 }
1981
 }
1923
 
1982
 
1945
             fi
2004
             fi
1946
             ;;
2005
             ;;
1947
     esac
2006
     esac
2007
+    rm $data
1948
 }
2008
 }
1949
 
2009
 
1950
 function ip_blocking_add {
2010
 function ip_blocking_add {
1968
             fi
2028
             fi
1969
             ;;
2029
             ;;
1970
     esac
2030
     esac
2031
+    rm $data
1971
 }
2032
 }
1972
 
2033
 
1973
 function domain_blocking_remove {
2034
 function domain_blocking_remove {
1994
             fi
2055
             fi
1995
             ;;
2056
             ;;
1996
     esac
2057
     esac
2058
+    rm $data
1997
 }
2059
 }
1998
 
2060
 
1999
 function ip_blocking_remove {
2061
 function ip_blocking_remove {
2017
             fi
2079
             fi
2018
             ;;
2080
             ;;
2019
     esac
2081
     esac
2082
+    rm $data
2020
 }
2083
 }
2021
 
2084
 
2022
 function domain_blocking_show {
2085
 function domain_blocking_show {
2049
                6 $"Back to main menu" on 2> $data
2112
                6 $"Back to main menu" on 2> $data
2050
         sel=$?
2113
         sel=$?
2051
         case $sel in
2114
         case $sel in
2052
-            1) break;;
2053
-            255) break;;
2115
+            1) rm $data
2116
+               break;;
2117
+            255) rm $data
2118
+                 break;;
2054
         esac
2119
         esac
2055
         case $(cat $data) in
2120
         case $(cat $data) in
2056
             1) domain_blocking_add;;
2121
             1) domain_blocking_add;;
2058
             3) ip_blocking_add;;
2123
             3) ip_blocking_add;;
2059
             4) ip_blocking_remove;;
2124
             4) ip_blocking_remove;;
2060
             5) domain_blocking_show;;
2125
             5) domain_blocking_show;;
2061
-            6) break;;
2126
+            6) rm $data
2127
+               break;;
2062
         esac
2128
         esac
2129
+        rm $data
2063
     done
2130
     done
2064
 }
2131
 }
2065
 
2132
 
2079
                6 $"Back to main menu" on 2> $data
2146
                6 $"Back to main menu" on 2> $data
2080
         sel=$?
2147
         sel=$?
2081
         case $sel in
2148
         case $sel in
2082
-            1) break;;
2083
-            255) break;;
2149
+            1) rm $data
2150
+               break;;
2151
+            255) rm $data
2152
+                 break;;
2084
         esac
2153
         esac
2085
         case $(cat $data) in
2154
         case $(cat $data) in
2086
             1) add_user;;
2155
             1) add_user;;
2088
             3) change_password;;
2157
             3) change_password;;
2089
             4) change_ssh_public_key;;
2158
             4) change_ssh_public_key;;
2090
             5) reset_password_tries;;
2159
             5) reset_password_tries;;
2091
-            6) break;;
2160
+            6) rm $data
2161
+               break;;
2092
         esac
2162
         esac
2163
+        rm $data
2093
     done
2164
     done
2094
 }
2165
 }
2095
 
2166
 
2172
                5 $"Exit" on 2> $data
2243
                5 $"Exit" on 2> $data
2173
         sel=$?
2244
         sel=$?
2174
         case $sel in
2245
         case $sel in
2175
-            1) break;;
2176
-            255) break;;
2246
+            1) rm $data
2247
+               break;;
2248
+            255) rm $data
2249
+                 break;;
2177
         esac
2250
         esac
2178
         case $(cat $data) in
2251
         case $(cat $data) in
2179
             1) wifi_enable;;
2252
             1) wifi_enable;;
2180
             2) wifi_settings;;
2253
             2) wifi_settings;;
2181
             3) wifi_edit_networks;;
2254
             3) wifi_edit_networks;;
2182
             4) hotspot_settings;;
2255
             4) hotspot_settings;;
2183
-            5) break;;
2256
+            5) rm $data
2257
+               break;;
2184
         esac
2258
         esac
2259
+        rm $data
2185
     done
2260
     done
2186
 }
2261
 }
2187
 
2262
 
2256
                22 $"Exit" on 2> $data
2331
                22 $"Exit" on 2> $data
2257
         sel=$?
2332
         sel=$?
2258
         case $sel in
2333
         case $sel in
2259
-            1) exit 1;;
2260
-            255) exit 1;;
2334
+            1) rm $data
2335
+               exit 1;;
2336
+            255) rm $data
2337
+                 exit 1;;
2261
         esac
2338
         esac
2262
         please_wait
2339
         please_wait
2263
         case $(cat $data) in
2340
         case $(cat $data) in
2287
             19) check_for_updates;;
2364
             19) check_for_updates;;
2288
             20) shut_down_system;;
2365
             20) shut_down_system;;
2289
             21) restart_system;;
2366
             21) restart_system;;
2290
-            22) break;;
2367
+            22) rm $data
2368
+                break;;
2291
         esac
2369
         esac
2370
+        rm $data
2292
     done
2371
     done
2293
 }
2372
 }
2294
 
2373
 

+ 72
- 24
src/freedombone-controlpanel-user Wyświetl plik

13
 # License
13
 # License
14
 # =======
14
 # =======
15
 #
15
 #
16
-# Copyright (C) 2016 Bob Mottram <bob@freedombone.net>
16
+# Copyright (C) 2018 Bob Mottram <bob@freedombone.net>
17
 #
17
 #
18
 # This program is free software: you can redistribute it and/or modify
18
 # This program is free software: you can redistribute it and/or modify
19
 # it under the terms of the GNU Affero General Public License as published by
19
 # it under the terms of the GNU Affero General Public License as published by
169
            2> $data
169
            2> $data
170
     sel=$?
170
     sel=$?
171
     case $sel in
171
     case $sel in
172
-        1) return;;
173
-        255) return;;
172
+        1) rm $data
173
+           return;;
174
+        255) rm $data
175
+             return;;
174
     esac
176
     esac
175
     LIST_NAME=$(cat $data | sed -n 1p)
177
     LIST_NAME=$(cat $data | sed -n 1p)
176
     LIST_SUBJECT=$(cat $data | sed -n 2p)
178
     LIST_SUBJECT=$(cat $data | sed -n 2p)
188
     if [ ${#LIST_NAME} -lt 2 ]; then
190
     if [ ${#LIST_NAME} -lt 2 ]; then
189
         dialog --title $"Add mailing list" \
191
         dialog --title $"Add mailing list" \
190
                --msgbox $"No mailing list name was given" 6 40
192
                --msgbox $"No mailing list name was given" 6 40
193
+        rm $data
191
         return
194
         return
192
     fi
195
     fi
193
     if [ ${#LIST_SUBJECT} -lt 2 ]; then
196
     if [ ${#LIST_SUBJECT} -lt 2 ]; then
194
         if [ ${#LIST_EMAIL} -lt 2 ]; then
197
         if [ ${#LIST_EMAIL} -lt 2 ]; then
195
             dialog --title $"Add mailing list" \
198
             dialog --title $"Add mailing list" \
196
                    --msgbox $"No mailing list subject or address was given" 6 40
199
                    --msgbox $"No mailing list subject or address was given" 6 40
200
+            rm $data
197
             return
201
             return
198
         fi
202
         fi
199
     fi
203
     fi
204
         if [[ "$LIST_EMAIL" != *"@"* || "$LIST_EMAIL" != *"."* ]]; then
208
         if [[ "$LIST_EMAIL" != *"@"* || "$LIST_EMAIL" != *"."* ]]; then
205
             dialog --title $"Add mailing list" \
209
             dialog --title $"Add mailing list" \
206
                    --msgbox $"Unrecognised email address" 6 40
210
                    --msgbox $"Unrecognised email address" 6 40
211
+            rm $data
207
             return
212
             return
208
         else
213
         else
209
             ${PROJECT_NAME}-addlist -u $USER -l "$LIST_NAME" \
214
             ${PROJECT_NAME}-addlist -u $USER -l "$LIST_NAME" \
213
 
218
 
214
     dialog --title $"Add mailing list" \
219
     dialog --title $"Add mailing list" \
215
            --msgbox $"$LIST_NAME list was added" 6 40
220
            --msgbox $"$LIST_NAME list was added" 6 40
221
+    rm $data
216
 }
222
 }
217
 
223
 
218
 function email_rule_address {
224
 function email_rule_address {
227
            2> $data
233
            2> $data
228
     sel=$?
234
     sel=$?
229
     case $sel in
235
     case $sel in
230
-        1) return;;
231
-        255) return;;
236
+        1) rm $data
237
+           return;;
238
+        255) rm $data
239
+             return;;
232
     esac
240
     esac
233
     RULE_EMAIL=$(cat $data | sed -n 1p)
241
     RULE_EMAIL=$(cat $data | sed -n 1p)
234
     RULE_FOLDER=$(cat $data | sed -n 2p)
242
     RULE_FOLDER=$(cat $data | sed -n 2p)
245
     if [ ${#RULE_EMAIL} -lt 2 ]; then
253
     if [ ${#RULE_EMAIL} -lt 2 ]; then
246
         dialog --title $"Create an email rule" \
254
         dialog --title $"Create an email rule" \
247
                --msgbox $"No email address was given" 6 40
255
                --msgbox $"No email address was given" 6 40
256
+        rm $data
248
         return
257
         return
249
     fi
258
     fi
250
     if [ ${#RULE_FOLDER} -lt 2 ]; then
259
     if [ ${#RULE_FOLDER} -lt 2 ]; then
251
         dialog --title $"Create an email rule" \
260
         dialog --title $"Create an email rule" \
252
                --msgbox $"No folder name was given" 6 40
261
                --msgbox $"No folder name was given" 6 40
262
+        rm $data
253
         return
263
         return
254
     fi
264
     fi
255
     if [[ "$RULE_EMAIL" != *"@"* || "$RULE_EMAIL" != *"."* ]]; then
265
     if [[ "$RULE_EMAIL" != *"@"* || "$RULE_EMAIL" != *"."* ]]; then
256
         dialog --title $"Create an email rule" \
266
         dialog --title $"Create an email rule" \
257
                --msgbox $"Unrecognised email address" 6 40
267
                --msgbox $"Unrecognised email address" 6 40
268
+        rm $data
258
         return
269
         return
259
     fi
270
     fi
260
 
271
 
262
                    -g "$RULE_FOLDER" --public $RULE_PUBLIC
273
                    -g "$RULE_FOLDER" --public $RULE_PUBLIC
263
     dialog --title $"Create an email rule" \
274
     dialog --title $"Create an email rule" \
264
            --msgbox $"Email rule for $RULE_EMAIL was added" 6 40
275
            --msgbox $"Email rule for $RULE_EMAIL was added" 6 40
276
+    rm $data
265
 }
277
 }
266
 
278
 
267
 function gpg_set_trust {
279
 function gpg_set_trust {
281
                5 $"I trust ultimately" off 2> $data
293
                5 $"I trust ultimately" off 2> $data
282
         sel=$?
294
         sel=$?
283
         case $sel in
295
         case $sel in
284
-            1) return;;
285
-            255) return;;
296
+            1) rm $data
297
+               return;;
298
+            255) rm $data
299
+                 return;;
286
         esac
300
         esac
287
         TRUST_LEVEL=$(cat $data)
301
         TRUST_LEVEL=$(cat $data)
288
         if [ ${TRUST_LEVEL} -ge 1 ] ; then
302
         if [ ${TRUST_LEVEL} -ge 1 ] ; then
296
                 fi
310
                 fi
297
             fi
311
             fi
298
         fi
312
         fi
313
+        rm $data
299
     fi
314
     fi
300
 }
315
 }
301
 
316
 
311
            2> $data
326
            2> $data
312
     sel=$?
327
     sel=$?
313
     case $sel in
328
     case $sel in
314
-        1) return;;
315
-        255) return;;
329
+        1) rm $data
330
+           return;;
331
+        255) rm $data
332
+             return;;
316
     esac
333
     esac
317
     RULE_SUBJECT=$(cat $data | sed -n 1p)
334
     RULE_SUBJECT=$(cat $data | sed -n 1p)
318
     RULE_FOLDER=$(cat $data | sed -n 2p)
335
     RULE_FOLDER=$(cat $data | sed -n 2p)
329
     if [ ${#RULE_SUBJECT} -lt 2 ]; then
346
     if [ ${#RULE_SUBJECT} -lt 2 ]; then
330
         dialog --title $"Create an email rule" \
347
         dialog --title $"Create an email rule" \
331
                --msgbox $"No subject text was given" 6 40
348
                --msgbox $"No subject text was given" 6 40
349
+        rm $data
332
         return
350
         return
333
     fi
351
     fi
334
     if [ ${#RULE_FOLDER} -lt 2 ]; then
352
     if [ ${#RULE_FOLDER} -lt 2 ]; then
335
         dialog --title $"Create an email rule" \
353
         dialog --title $"Create an email rule" \
336
                --msgbox $"No folder name was given" 6 40
354
                --msgbox $"No folder name was given" 6 40
355
+        rm $data
337
         return
356
         return
338
     fi
357
     fi
339
 
358
 
341
                    -g "$RULE_FOLDER" --public $RULE_PUBLIC
360
                    -g "$RULE_FOLDER" --public $RULE_PUBLIC
342
     dialog --title $"Create an email rule" \
361
     dialog --title $"Create an email rule" \
343
            --msgbox $"Email rule for subject '$RULE_SUBJECT' was added" 6 40
362
            --msgbox $"Email rule for subject '$RULE_SUBJECT' was added" 6 40
363
+    rm $data
344
 }
364
 }
345
 
365
 
346
 function block_unblock_email {
366
 function block_unblock_email {
355
            2> $data
375
            2> $data
356
     sel=$?
376
     sel=$?
357
     case $sel in
377
     case $sel in
358
-        1) return;;
359
-        255) return;;
378
+        1) rm $data
379
+           return;;
380
+        255) rm $data
381
+             return;;
360
     esac
382
     esac
361
     BLOCK_EMAIL=$(cat $data | sed -n 1p)
383
     BLOCK_EMAIL=$(cat $data | sed -n 1p)
362
     BLOCK=$(cat $data | sed -n 2p)
384
     BLOCK=$(cat $data | sed -n 2p)
368
     if [[ "$BLOCK_EMAIL" != *"@"* || "$BLOCK_EMAIL" != *"."* ]]; then
390
     if [[ "$BLOCK_EMAIL" != *"@"* || "$BLOCK_EMAIL" != *"."* ]]; then
369
         dialog --title "$blockstr" \
391
         dialog --title "$blockstr" \
370
                --msgbox $"Unrecognised email address" 6 40
392
                --msgbox $"Unrecognised email address" 6 40
393
+        rm $data
371
         return
394
         return
372
     fi
395
     fi
373
     if [[ $BLOCK == "y"* || $BLOCK == "Y"* ]]; then
396
     if [[ $BLOCK == "y"* || $BLOCK == "Y"* ]]; then
379
         dialog --title $"Unblock an email" \
402
         dialog --title $"Unblock an email" \
380
                --msgbox "Email from $BLOCK_EMAIL is now unblocked" 6 75
403
                --msgbox "Email from $BLOCK_EMAIL is now unblocked" 6 75
381
     fi
404
     fi
405
+    rm $data
382
 }
406
 }
383
 
407
 
384
 function block_unblock_subject {
408
 function block_unblock_subject {
393
            2> $data
417
            2> $data
394
     sel=$?
418
     sel=$?
395
     case $sel in
419
     case $sel in
396
-        1) return;;
397
-        255) return;;
420
+        1) rm $data
421
+           return;;
422
+        255) rm $data
423
+             return;;
398
     esac
424
     esac
399
     BLOCK_SUBJECT=$(cat $data | sed -n 1p)
425
     BLOCK_SUBJECT=$(cat $data | sed -n 1p)
400
     BLOCK=$(cat $data | sed -n 2p)
426
     BLOCK=$(cat $data | sed -n 2p)
401
     if [ ${#BLOCK_SUBJECT} -lt 2 ]; then
427
     if [ ${#BLOCK_SUBJECT} -lt 2 ]; then
402
         dialog --title "$blockstr" \
428
         dialog --title "$blockstr" \
403
                --msgbox $"No subject was given" 6 40
429
                --msgbox $"No subject was given" 6 40
430
+        rm $data
404
         return
431
         return
405
     fi
432
     fi
406
     if [[ $BLOCK == "y"* || $BLOCK == "Y"* ]]; then
433
     if [[ $BLOCK == "y"* || $BLOCK == "Y"* ]]; then
412
         dialog --title $"Unblock an email" \
439
         dialog --title $"Unblock an email" \
413
                --msgbox $"Email with subject $BLOCK_SUBJECT is now unblocked" 6 40
440
                --msgbox $"Email with subject $BLOCK_SUBJECT is now unblocked" 6 40
414
     fi
441
     fi
442
+    rm $data
415
 }
443
 }
416
 
444
 
417
 function show_gpg_key {
445
 function show_gpg_key {
530
             fi
558
             fi
531
             ;;
559
             ;;
532
     esac
560
     esac
561
+    rm $data
533
 }
562
 }
534
 
563
 
535
 function add_ssh_key {
564
 function add_ssh_key {
568
             fi
597
             fi
569
             ;;
598
             ;;
570
     esac
599
     esac
600
+    rm $data
571
 }
601
 }
572
 
602
 
573
 function remove_ssh_key {
603
 function remove_ssh_key {
590
             fi
620
             fi
591
             ;;
621
             ;;
592
     esac
622
     esac
623
+    rm $data
593
 }
624
 }
594
 
625
 
595
 function smtp_proxy {
626
 function smtp_proxy {
631
            2> $data
662
            2> $data
632
     sel=$?
663
     sel=$?
633
     case $sel in
664
     case $sel in
634
-        1) return;;
635
-        255) return;;
665
+        1) rm $data
666
+           return;;
667
+        255) rm $data
668
+             return;;
636
     esac
669
     esac
637
     SMTP_PROXY_ENABLE=$(cat $data | sed -n 1p)
670
     SMTP_PROXY_ENABLE=$(cat $data | sed -n 1p)
638
     SMTP_PROXY_PROTOCOL=$(cat $data | sed -n 2p)
671
     SMTP_PROXY_PROTOCOL=$(cat $data | sed -n 2p)
654
             sed -i 's|set smtp_url|#set smtp_url|g' $MUTTRC_FILE
687
             sed -i 's|set smtp_url|#set smtp_url|g' $MUTTRC_FILE
655
         fi
688
         fi
656
     fi
689
     fi
690
+    rm $data
657
 }
691
 }
658
 
692
 
659
 function sign_gpg_key {
693
 function sign_gpg_key {
682
             fi
716
             fi
683
             ;;
717
             ;;
684
     esac
718
     esac
719
+    rm $data
685
 }
720
 }
686
 
721
 
687
 
722
 
702
             fi
737
             fi
703
             ;;
738
             ;;
704
     esac
739
     esac
740
+    rm $data
705
 }
741
 }
706
 
742
 
707
 function menu_encryption_keys {
743
 function menu_encryption_keys {
725
                11 $"Back to main menu" on 2> $data
761
                11 $"Back to main menu" on 2> $data
726
         sel=$?
762
         sel=$?
727
         case $sel in
763
         case $sel in
728
-            1) break;;
729
-            255) break;;
764
+            1) rm $data
765
+               break;;
766
+            255) rm $data
767
+                 break;;
730
         esac
768
         esac
731
         case $(cat $data) in
769
         case $(cat $data) in
732
             1) show_gpg_key;;
770
             1) show_gpg_key;;
739
             8) add_ssh_key;;
777
             8) add_ssh_key;;
740
             9) remove_ssh_key;;
778
             9) remove_ssh_key;;
741
             10) gpg_key_trust;;
779
             10) gpg_key_trust;;
742
-            11) break;;
780
+            11) rm $data
781
+                break;;
743
         esac
782
         esac
783
+        rm $data
744
     done
784
     done
745
 }
785
 }
746
 
786
 
761
                7 $"Back to main menu" on 2> $data
801
                7 $"Back to main menu" on 2> $data
762
         sel=$?
802
         sel=$?
763
         case $sel in
803
         case $sel in
764
-            1) break;;
765
-            255) break;;
804
+            1) rm $data
805
+               break;;
806
+            255) rm $data
807
+                 break;;
766
         esac
808
         esac
767
         case $(cat $data) in
809
         case $(cat $data) in
768
             1) add_to_mailing_list;;
810
             1) add_to_mailing_list;;
771
             4) email_rule_subject;;
813
             4) email_rule_subject;;
772
             5) block_unblock_email;;
814
             5) block_unblock_email;;
773
             6) block_unblock_subject;;
815
             6) block_unblock_subject;;
774
-            7) break;;
816
+            7) rm $data
817
+               break;;
775
         esac
818
         esac
819
+        rm $data
776
     done
820
     done
777
 }
821
 }
778
 
822
 
857
                9 $"Log out" on 2> $data
901
                9 $"Log out" on 2> $data
858
         sel=$?
902
         sel=$?
859
         case $sel in
903
         case $sel in
860
-            1) exit 1;;
861
-            255) exit 1;;
904
+            1) rm $data
905
+               exit 1;;
906
+            255) rm $data
907
+                 exit 1;;
862
         esac
908
         esac
863
         case $(cat $data) in
909
         case $(cat $data) in
864
             1) mutt;;
910
             1) mutt;;
868
             5) menu_encryption_keys;;
914
             5) menu_encryption_keys;;
869
             6) smtp_proxy;;
915
             6) smtp_proxy;;
870
             7) menu_admin;;
916
             7) menu_admin;;
871
-            8) break;;
917
+            8) rm $data
918
+               break;;
872
             9) kill -HUP `pgrep -s 0 -o`;;
919
             9) kill -HUP `pgrep -s 0 -o`;;
873
         esac
920
         esac
921
+        rm $data
874
     done
922
     done
875
 }
923
 }
876
 
924