3 require_once("lib.php");
7 $fname = "/var/tmp/.phpipman.".time();
10 echo "usage: ".$argv[0]." subnet-id";
13 $res = $db->dbobject->query("select * from subnet where sn_id='".$argv[1]."'");
16 foreach($res as $row) {
17 //("sn_id" INTEGER PRIMARY KEY AUTOINCREMENT,"snid_id" INTEGER,"sn_ip" TEXT,"sn_mask" TEXT,"sn_name" TEXT, "sn_desc" TEXT);
18 $sn_ip = $row["sn_ip"];
19 $sn_mask = $row["sn_mask"];
22 if(ipversion($sn_ip)!=4) return;
24 system("/usr/bin/nmap -oX $fname -sP $sn_ip/$sn_mask > /dev/null 2>&1");
26 //$fname = "/var/tmp/.phpipman.1284344553";
27 echo "Output in $fname\n";
29 $sml = simplexml_load_file("$fname");
31 foreach($sml as $row => $key) {
35 $status = $key->status["state"];
36 $ha = $key->address["addr"];
37 //echo "host address: $ha\n";
39 if(isset($key->hostnames->hostname["name"])) {
40 //echo "was set: ".$key->hostnames->hostname["name"]."\n";
42 $hname = $key->hostnames->hostname["name"];
45 //"hosts" ("ho_id" INTEGER PRIMARY KEY AUTOINCREMENT,"ho_sn_id" INTEGER,"ho_ip" TEXT,"ho_name" TEXT,"ho_desc" TEXT);';
49 if($hname == "") $hname = $ha;
50 echo "up: $ha, $hname\n";
54 echo "down: $ha, $hname\n";
59 $sql = "delete from hosts where ho_ip=='$ha'";
60 $db->dbobject->query($sql);
61 $sql = "insert into hosts values (NULL, '$id', '$ha', '$hname', '')";
62 $db->dbobject->query($sql);
63 echo "added, $ha, $hname\n";