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_discoveryCheck(1); //set addresses if ($scan_subnets !== false) { // initial array $addresses_tmp = array(); // loop foreach ($scan_subnets as $s) { // if subnet has slaves dont check it if ($Subnets->has_slaves($s->id) === false) { $addresses_tmp[$s->id] = $Scan->prepare_addresses_to_scan("discovery", $s->id, false); } } //reindex if (sizeof($addresses_tmp) > 0) { foreach ($addresses_tmp as $s_id => $a) { foreach ($a as $ip) {