From 46438e696b09d504cf682794c87d3a44cd9b1f98 Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Sun, 15 Jul 2018 14:00:27 +0200 Subject: [PATCH] firmware: reboot hint only if download is possible; closes #2547 --- src/opnsense/scripts/firmware/check.sh | 4 ++-- src/opnsense/scripts/firmware/reboot.sh | 5 +++++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/opnsense/scripts/firmware/check.sh b/src/opnsense/scripts/firmware/check.sh index 61d8ce988..8863e7b0a 100755 --- a/src/opnsense/scripts/firmware/check.sh +++ b/src/opnsense/scripts/firmware/check.sh @@ -280,7 +280,6 @@ if [ "$pkg_running" == "" ]; then base_to_delete="$(opnsense-update -bv)" base_to_delete="${base_to_delete%-*}" base_is_size="$(opnsense-update -bfSr $base_to_reboot)" - upgrade_needs_reboot="1" if [ "$base_to_reboot" != "$base_to_delete" -a -n "$base_is_size" ]; then if [ "$packages_upgraded" == "" ]; then packages_upgraded=$packages_upgraded"{\"name\":\"base\"," # If it is the first item then we do not want a seperator @@ -291,6 +290,7 @@ if [ "$pkg_running" == "" ]; then packages_upgraded=$packages_upgraded"\"current_version\":\"$base_to_delete\"," packages_upgraded=$packages_upgraded"\"new_version\":\"$base_to_reboot\"}" updates=$(expr $updates + 1) + upgrade_needs_reboot="1" fi fi @@ -308,7 +308,6 @@ if [ "$pkg_running" == "" ]; then kernel_to_delete="$(opnsense-update -kv)" kernel_to_delete="${kernel_to_delete%-*}" kernel_is_size="$(opnsense-update -fkSr $kernel_to_reboot)" - upgrade_needs_reboot="1" if [ "$kernel_to_reboot" != "$kernel_to_delete" -a -n "$kernel_is_size" ]; then if [ "$packages_upgraded" == "" ]; then packages_upgraded=$packages_upgraded"{\"name\":\"kernel\"," # If it is the first item then we do not want a seperator @@ -319,6 +318,7 @@ if [ "$pkg_running" == "" ]; then packages_upgraded=$packages_upgraded"\"current_version\":\"$kernel_to_delete\"," packages_upgraded=$packages_upgraded"\"new_version\":\"$kernel_to_reboot\"}" updates=$(expr $updates + 1) + upgrade_needs_reboot="1" fi fi fi diff --git a/src/opnsense/scripts/firmware/reboot.sh b/src/opnsense/scripts/firmware/reboot.sh index f75d81823..6c04d453a 100755 --- a/src/opnsense/scripts/firmware/reboot.sh +++ b/src/opnsense/scripts/firmware/reboot.sh @@ -33,6 +33,11 @@ DUMMY_UPDATE=$(${PKG} update 2>&1) LQUERY=$(${PKG} query %v opnsense-update 2> /dev/null) RQUERY=$(${PKG} rquery %v opnsense-update 2> /dev/null) +# We do not check for downloads here to make sure the actual version +# we want is acutally there. The whole point of this script is a +# hint to the console to reboot. Worst case we are wrong and the +# reboot doesn't happen. The GUI offers precise info about it. + if [ -n "${LQUERY}" -a -n "${RQUERY}" -a "${LQUERY%%_*}" != "${RQUERY%%_*}" ]; then WANT_REBOOT=0 elif opnsense-update -c; then