Beispiel #1
0
$Scan->reset_debugging(false);
// change scan type?
// $Scan->reset_scan_method ("pear");
// set ping statuses
$statuses = explode(";", $Scan->settings->pingStatus);
// set mail override flag
$send_mail = true;
// response for mailing
$address_change = array();
// Array with differences, can be used to email to admins
// script can only be run from cli
if (php_sapi_name() != "cli") {
    die("This script can only be run from cli!");
}
// test to see if threading is available
if (!Thread::available()) {
    die("Threading is required for scanning subnets. Please recompile PHP with pcntl extension");
}
// verify ping path
if ($Scan->icmp_type == "ping") {
    if (!file_exists($Scan->settings->scanPingPath)) {
        die("Invalid ping path!");
    }
}
// verify fping path
if ($Scan->icmp_type == "fping") {
    if (!file_exists($Scan->settings->scanFPingPath)) {
        die("Invalid fping path!");
    }
}
//first fetch all subnets to be scanned
 /**
  * Validates threading support
  *
  * @access private
  * @return void
  */
 private function validate_threading()
 {
     // only for threaded
     if ($this->config->nonthreaded !== true) {
         if (!Thread::available()) {
             $this->throw_exception("Threading is required for scanning subnets. Please recompile PHP with pcntl extension");
         }
     }
 }