summaryrefslogtreecommitdiffstats
path: root/usr
diff options
context:
space:
mode:
authorColin Smith <colin@pfsense.org>2005-04-18 01:33:51 +0000
committerColin Smith <colin@pfsense.org>2005-04-18 01:33:51 +0000
commit5f69494b1815efcf094dc749009fd3cebd71ae2f (patch)
tree971bb6ed613f5cf0ddfeb714edfaf44f1dfe8ca0 /usr
parent18859f3b8906a39e5befe1771cac2ab945ca9aba (diff)
downloadpfsense-5f69494b1815efcf094dc749009fd3cebd71ae2f.zip
pfsense-5f69494b1815efcf094dc749009fd3cebd71ae2f.tar.gz
Use loops to handle all update categories, instead of individual blocks.
Diffstat (limited to 'usr')
-rwxr-xr-xusr/local/www/system_firmware_auto.php102
1 files changed, 33 insertions, 69 deletions
diff --git a/usr/local/www/system_firmware_auto.php b/usr/local/www/system_firmware_auto.php
index 53915c7..e44d077 100755
--- a/usr/local/www/system_firmware_auto.php
+++ b/usr/local/www/system_firmware_auto.php
@@ -152,83 +152,47 @@ $static_text .= "done.\n";
update_output_window($static_text);
if($use_old_checkversion == false) {
+ $upgrades = array('firmware', 'kernel', 'base');
if(array_shift($versions) == true) {
- update_status("Found required updates. Downloading...");
- if(is_string($versions[0][0])) {
- $static_text .= "Firmware\n\tInstalled: " . $firmware_version . "\n\tCurrent: " . $versions[0][count($versions[0]) - 1] . "\n";
- $needs_firmware_upgrade = true;
- }
- if(is_string($versions[1][0])) {
- $static_text .= "Kernel\n\tInstalled: " . $kernel_version . "\n\tCurrent: " . $versions[1][count($versions[1]) - 1] . "\n";
- $needs_kernel_upgrade = true;
- }
- if(is_string($versions[2][0])) {
- $static_text .= "Base\n\tInstalled: " . $base_version . "\n\tCurrent: " . $versions[2][count($versions[2]) -1] . "\n";
- $needs_base_upgrade = true;
- }
-// if(isset($versions[3])) $static_text = $versions[4] . '\n'; // If we have additional data (a CHANGELOG etc) to display, do so.
- } else {
- update_status("No updates required.");
- }
-
- $kernel_filename="pfSense-kernel-{$kernel_version}.tgz";
- $base_filename="pfSense-base-{$base_version}.tgz";
-
- if($needs_firmware_upgrade == true) {
- $static_text .= "Downloading firmware updates... ";
$i = 0;
- foreach($versions[0] as $tofetch) {
- $todownload = substr(strrchr($tofetch, '-'), 1);
- $static_text .= $todownload;
- update_output_window($static_text . " ");
- $firmware_filename="pfSense-firmware-{$todownload}.tgz";
- download_file_with_progress_bar("http://www.pfSense.com/updates/{$firmware_filename}", "/tmp/{$firmware_filename}");
- if($i == count($versions[0]) -1) {
- $static_text .= ".\n";
+ $need_update = array();
+ update_status("Found required updates. Downloading...");
+ foreach($versions as $ver) {
+ if(is_string($ver[0])) {
+ $static_text .= ucfirst($upgrades[$i]) . "\n\tInstalled: " . $firmware_version . "\n\tCurrent: " . $ver[count($ver) -1] . "\n";
+ $needupdate[] = true;
} else {
- $static_text .= ", ";
+ $needupdate[] = false;
}
- update_output_window($static_text);
$i++;
}
- }
-
- if($needs_kernel_upgrade == true) {
- $static_text .= "Downloading kernel updates... ";
$i = 0;
- foreach($versions[1] as $tofetch) {
- $todownload = substr(strrchr($tofetch, '-'), 1);
- $static_text .= $todownload;
- update_output_window($static_text . " ");
- $kernel_filename="pfSense-kernel-{$todownload}.tgz";
- download_file_with_progress_bar("http://www.pfSense.com/updates/{$kernel_filename}", "/tmp/{$kernel_filename}");
- if($i == count($versions[1]) -1) {
- $static_text .= ".\n";
- } else {
- $static_text .= ", ";
- }
- update_output_window($static_text);
- $i++;
- }
+ // if(isset($versions[3])) $static_text = $versions[4] . '\n'; // If we have additional data (a CHANGELOG etc) to display, do so.
+ } else {
+ update_status("No updates required.");
+ } else {
+ update_status("No updates required.");
}
-
- if($needs_base_upgrade == true) {
- $static_text .= "Downloading base updates... ";
- $i = 0;
- foreach($versions[2] as $tofetch) {
- $todownload = substr(strrchr($tofetch, '-'), 1);
- $static_text .= $todownload;
- update_output_window($static_text . " ");
- $base_filename="pfSense-base-{$todownload}.tgz";
- download_file_with_progress_bar("http://www.pfSense.com/updates/{$kernel_filename}", "/tmp/{$base_filename}");
- if($i == count($versions[2]) -1) {
- $static_text .= ".\n";
- } else {
- $static_text .= ", ";
- }
- update_output_window($static_text);
- $i++;
- }
+ foreach($needupdate as $toupdate) {
+ if($toupdate == true) {
+ $static_text .= "Downloading {$upgrades[$i]} updates... ";
+ $s = 0;
+ foreach($versions[$i] as $aver) {
+ $todownload = substr(strrchr($tofetch, '-'), 1);
+ $static_text .= $todownload;
+ update_output_window($static_text . " ");
+ $tofetch = "pfSense-" . $upgrades[$i] . "-" . $todownload . ".tgz";
+ download_file_with_progress_bar("http://www.pfSense.com/updates/{$tofetch}", "/tmp/{$tofetch}");
+ if($s == count($aver) - 1) {
+ $static_text .= ".\n";
+ } else {
+ $static_text .= ", ";
+ }
+ update_output_window($static_text);
+ $s++;
+ }
+ }
+ $i++;
}
/* launch external upgrade helper */
OpenPOWER on IntegriCloud