}
    }
}
/* launch external upgrade helper */
$external_upgrade_helper_text = "/etc/rc.firmware ";
if ($g['platform'] == "nanobsd") {
    $external_upgrade_helper_text .= "pfSenseNanoBSDupgrade ";
} else {
    $external_upgrade_helper_text .= "pfSenseupgrade ";
}
$external_upgrade_helper_text .= "{$g['upload_path']}/latest.tgz";
$downloaded_latest_tgz_sha256 = str_replace("\n", "", `/sbin/sha256 -q {$g['upload_path']}/latest.tgz`);
$upgrade_latest_tgz_sha256 = str_replace("\n", "", `/bin/cat {$g['upload_path']}/latest.tgz.sha256 | awk '{ print \$4 }'`);
$sigchk = 0;
if (!isset($curcfg['alturl']['enable'])) {
    $sigchk = verify_digital_signature("{$g['upload_path']}/latest.tgz");
}
$exitstatus = 0;
if ($sigchk == 1) {
    $sig_warning = gettext("The digital signature on this image is invalid.");
    $exitstatus = 1;
} else {
    if ($sigchk == 2) {
        $sig_warning = gettext("This image is not digitally signed.");
        if (!isset($config['system']['firmware']['allowinvalidsig'])) {
            $exitstatus = 1;
        }
    } else {
        if ($sigchk >= 3) {
            $sig_warning = gettext("There has been an error verifying the signature on this image.");
            $exitstatus = 1;
Ejemplo n.º 2
0
 /* verify firmware image(s) */
 if (file_is_for_platform($_FILES['ulfile']['tmp_name'], $_FILES['ulfile']['name']) == false && !$_POST['sig_override']) {
     $input_errors[] = "Yüklenen imaj dosyası bu platforma ait değil! ({$g['platform']}).";
 } else {
     if (!file_exists($_FILES['ulfile']['tmp_name'])) {
         /* probably out of memory for the MFS */
         $input_errors[] = "Imaj yükleme hatası (Hafıza kaynaklı?)";
         exec_rc_script("/etc/rc.firmware disable");
         if (file_exists($d_fwupenabled_path)) {
             unlink($d_fwupenabled_path);
         }
     } else {
         /* move the image so PHP won't delete it */
         rename($_FILES['ulfile']['tmp_name'], "{$g['upload_path']}/firmware.tgz");
         /* check digital signature */
         $sigchk = verify_digital_signature("{$g['upload_path']}/firmware.tgz");
         if ($sigchk == 1) {
             $sig_warning = "Imaj ait dijital imza hatalı!";
         } else {
             if ($sigchk == 2) {
                 $sig_warning = "Imaj dijital olarak imzalanmamış!";
             } else {
                 if ($sigchk == 3 || $sigchk == 4) {
                     $sig_warning = "Imaj imza belirlemede hata ile karşılaşıldı!";
                 }
             }
         }
         if (!verify_gzip_file("{$g['upload_path']}/firmware.tgz")) {
             $input_errors[] = "Imaj dosyası bozuk!";
             unlink("{$g['upload_path']}/firmware.tgz");
         }