diff --git a/defaults.inc b/defaults.inc index 3f18725..ef705e3 100755 --- a/defaults.inc +++ b/defaults.inc @@ -49,4 +49,23 @@ MMUPDATECHECK(){ SENDNOTICE(){ [ "${EMAIL_NOTICE}" != "" ] && echo -e "${2}\n\n$(date)" | mail -s "${1}" ${EMAIL_NOTICE} -} \ No newline at end of file +} + +uptime_minutes() { + set `uptime -p` + local minutes=0 + shift + while [ -n "$1" ]; do + case $2 in + day*) + ((minutes+=$1*1440));; + hour*) + ((minutes+=$1*60));; + minute*) + ((minutes+=$1));; + esac + shift + shift + done + echo $minutes +} diff --git a/run.sh b/run.sh index e27dd96..1dd4718 100755 --- a/run.sh +++ b/run.sh @@ -71,15 +71,10 @@ else rm -f ${MMFOLDER}/mm.* fi if [ -f ${MMFOLDER}/mm.stop.checking ] && [ "${1}" != "status" ]; then - fd=$(expr $(date +%s) - $(stat -L --format %Y ${MMFOLDER}/mm.stop.checking)) - - # if [ -f ${MMFOLDER}/mm.stop.checking ]; then - # rm -f ${MMFOLDER}/mm.stop* - # fi - - if [ ${fd} -gt 900 ]; then + #fd=$(expr $(date +%s) - $(stat -L --format %Y ${MMFOLDER}/mm.stop.checking)) + if [ $(expr $(date +%s) - $(stat -L --format %Y ${MMFOLDER}/mm.stop.checking)) -gt 900 ]; then rm -f ${MMFOLDER}/mm.stop* - elif [ "${1}" = "check" ] && [ "$(ip link | grep "${VPN_INTERFACE}")" = "" ] && [ ! -f ${MMFOLDER}/mm.vpn* ]; then + elif [ "${1}" = "check" ] && [ "$(ip link | grep "${VPN_INTERFACE}")" = "" ] && [ ! -f ${MMFOLDER}/mm.vpn* ] && [ $(uptime_minutes) -lt 2 ]; then rm -f ${MMFOLDER}/mm.stop* else echo -e "${idsCL[LightCyan]}Try again later, 'mm' program currently in use...${idsCL[Default]}"