Browse Source

Check that the previous date was a number

Bob Mottram 10 years ago
parent
commit
97c23d9686
1 changed files with 16 additions and 13 deletions
  1. 16
    13
      src/freedombone

+ 16
- 13
src/freedombone View File

@@ -4776,24 +4776,27 @@ function time_synchronisation {
4776 4776
   echo 'DATE_BEFORE=$(date)' >> /usr/bin/updatedate
4777 4777
   echo 'BEFORE=$(date "+%s")' >> /usr/bin/updatedate
4778 4778
   echo 'BACKWARDS_BETWEEN=0' >> /usr/bin/updatedate
4779
+  echo 're="^[0-9]+$"' >> /usr/bin/updatedate
4779 4780
   echo '# If the date was previously set' >> /usr/bin/updatedate
4780 4781
   echo 'if [ -s "$BEFORE_DATE_FILE" ]; then' >> /usr/bin/updatedate
4781 4782
   echo '    filesize=$(wc -c "$BEFORE_DATE_FILE" | cut -f 1 -d " ")' >> /usr/bin/updatedate
4782 4783
   echo '    if [ $filesize -ge 5 ]; then' >> /usr/bin/updatedate
4783 4784
   echo '        BEFORE_FILE=$(cat $BEFORE_DATE_FILE)' >> /usr/bin/updatedate
4784
-  echo '        BEFORE_FULLDATE=$(cat $BEFORE_FULLDATE_FILE)' >> /usr/bin/updatedate
4785
-  echo '        # is the date going backwards?' >> /usr/bin/updatedate
4786
-  echo '        if (( $BEFORE_FILE > $BEFORE )); then' >> /usr/bin/updatedate
4787
-  echo '            echo -n "Date went backwards between tlsdate updates. " >> $LOGFILE' >> /usr/bin/updatedate
4788
-  echo '            echo -n "$BEFORE_FILE > $BEFORE, " >> $LOGFILE' >> /usr/bin/updatedate
4789
-  echo '            echo "$BEFORE_FULLDATE > $DATE_BEFORE" >> $LOGFILE' >> /usr/bin/updatedate
4790
-  echo '            # Send a warning email' >> /usr/bin/updatedate
4791
-  echo '            echo $(tail $LOGFILE -n 2) | mail -s "tlsdate anomaly" $EMAIL' >> /usr/bin/updatedate
4792
-  echo '            # Try another time source' >> /usr/bin/updatedate
4793
-  echo '            TIMESOURCE=$TIMESOURCE2' >> /usr/bin/updatedate
4794
-  echo '            # try running without any parameters' >> /usr/bin/updatedate
4795
-  echo '            tlsdate >> $LOGFILE' >> /usr/bin/updatedate
4796
-  echo '            BACKWARDS_BETWEEN=1' >> /usr/bin/updatedate
4785
+  echo '        if [[ $BEFORE_FILE =~ $re ]] ; then' >> /usr/bin/updatedate
4786
+  echo '            BEFORE_FULLDATE=$(cat $BEFORE_FULLDATE_FILE)' >> /usr/bin/updatedate
4787
+  echo '            # is the date going backwards?' >> /usr/bin/updatedate
4788
+  echo '            if (( $BEFORE_FILE > $BEFORE )); then' >> /usr/bin/updatedate
4789
+  echo '                echo -n "Date went backwards between tlsdate updates. " >> $LOGFILE' >> /usr/bin/updatedate
4790
+  echo '                echo -n "$BEFORE_FILE > $BEFORE, " >> $LOGFILE' >> /usr/bin/updatedate
4791
+  echo '                echo "$BEFORE_FULLDATE > $DATE_BEFORE" >> $LOGFILE' >> /usr/bin/updatedate
4792
+  echo '                # Send a warning email' >> /usr/bin/updatedate
4793
+  echo '                echo $(tail $LOGFILE -n 2) | mail -s "tlsdate anomaly" $EMAIL' >> /usr/bin/updatedate
4794
+  echo '                # Try another time source' >> /usr/bin/updatedate
4795
+  echo '                TIMESOURCE=$TIMESOURCE2' >> /usr/bin/updatedate
4796
+  echo '                # try running without any parameters' >> /usr/bin/updatedate
4797
+  echo '                tlsdate >> $LOGFILE' >> /usr/bin/updatedate
4798
+  echo '                BACKWARDS_BETWEEN=1' >> /usr/bin/updatedate
4799
+  echo '            fi' >> /usr/bin/updatedate
4797 4800
   echo '        fi' >> /usr/bin/updatedate
4798 4801
   echo '    fi' >> /usr/bin/updatedate
4799 4802
   echo 'fi' >> /usr/bin/updatedate