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 $scan_subnets = $Subnets->fetch_all_subnets_for_pingCheck(); if ($Scan->debugging) { print_r($scan_subnets); } if ($scan_subnets === false) { die("No subnets are marked for checking status updates"); } //fetch all addresses that need to be checked foreach ($scan_subnets as $s) { $subnet_addresses = $Addresses->fetch_subnet_addresses($s->id); //set array for fping if ($Scan->icmp_type == "fping") { $subnets[] = array("id" => $s->id, "cidr" => $Subnets->transform_to_dotted($s->subnet) . "/" . $s->mask); } //save addresses if (sizeof($subnet_addresses) > 1) {