$count = 0;
use DBI;
-use Socket;
umask 022;
open(DAT, ">$outdat") || exit $MR_OCONFIG;
# First report all the NETWK-A hosts.
$sth = $dbh->prepare("SELECT m.address, m.location, m.name, m.contact, " .
- "m.account_number, m.created, m.modtime FROM " .
- "machine m, subnet s WHERE m.status = 1 " .
+ "m.billing_contact, m.account_number, m.created, " .
+ "m.modtime FROM machine m, subnet s WHERE m.status = 1 " .
"AND m.snet_id = s.snet_id AND s.status = 1 " .
"AND m.address != 'unassigned' ORDER BY m.address")
|| exit $MR_DBMS_ERR;
$sth->execute || exit $MR_DBMS_ERR;
-while (($address, $location, $name, $contact, $accountnumber, $created, $modtime) =
+while (($address, $location, $name, $contact, $billingcontact, $accountnumber, $created, $modtime) =
$sth->fetchrow_array) {
- if ($location eq "\0") {
- $location = "NONE";
- }
- if ($contact eq "\0") {
- $contact = "NONE";
- }
- if ($accountnumber eq "\0") {
- $accountnumber = "NONE";
- }
- $row = "$address\t$location\t$name\t$contact\t$accountnumber\t+NETWK-A\t$created\t$modtime\n";
+ $row = "$address\t$location\t$name\t$contact\t$billingcontact\t$accountnumber\t+NETWK-A\t$created\t$modtime\n";
$row =~ s/\0//g;
print DAT $row;
$count++;
while (($saddr, $name, $contact, $accountnumber, $modtime) =
$sth->fetchrow_array) {
- if ($contact eq "\0") {
- $contact = "NONE";
- }
- if ($accountnumber eq "\0") {
- $accountnumber = "NONE";
- }
@addr = unpack("C4", pack("N", $saddr));
$address = "$addr[0].$addr[1].$addr[2].$addr[3]";
- $row = "$address\tNONE\t$name\t$contact\t$accountnumber\t+NETWK-10P\tNONE\t$modtime\n";
+ # Blank field between contact and account number below because that's
+ # where the billing contact would go if we had it for subnets.
+ $row = "$address\t\t$name\t$contact\t\t$accountnumber\t+NETWK-10P\t\t$modtime\n";
$row =~ s/\0//g;
print DAT $row;
$count++;
while (($saddr, $name, $contact, $accountnumber, $modtime) =
$sth->fetchrow_array) {
- if ($contact eq "\0") {
- $contact = "NONE";
- }
- if ($accountnumber eq "\0") {
- $accountnumber = "NONE";
- }
@addr = unpack("C4", pack("N", $saddr));
$address = "$addr[0].$addr[1].$addr[2].$addr[3]";
- $row = "$address\tNONE\t$name\t$contact\t$accountnumber\t+NETWK-100P\tNONE\t$modtime\n";
+ # Blank field between contact and account number below because that's
+ # where the billing contact would go if we had it for subnets.
+ $row = "$address\t\t$name\t$contact\t\t$accountnumber\t+NETWK-100P\t\t$modtime\n";
$row =~ s/\0//g;
print DAT $row;
$count++;
while (($saddr, $name, $contact, $accountnumber, $modtime) =
$sth->fetchrow_array) {
- if ($contact eq "\0") {
- $contact = "NONE";
- }
- if ($accountnumber eq "\0") {
- $accountnumber = "NONE";
- }
@addr = unpack("C4", pack("N", $saddr));
$address = "$addr[0].$addr[1].$addr[2].$addr[3]";
- $row = "$address\tNONE\t$name\t$contact\t$accountnumber\t+NETWK-1000P\tNONE\t$modtime\n";
+ # Blank field between contact and account number below because that's
+ # where the billing contact would go if we had it for subnets.
+ $row = "$address\t\t$name\t$contact\t\t$accountnumber\t+NETWK-1000P\t\t$modtime\n";
$row =~ s/\0//g;
print DAT $row;
$count++;
}
-# +NETWK-0
+# +NETWK-DORM
+$sth = $dbh->prepare("SELECT m.address, m.location, m.name, m.contact, " .
+ "m.billing_contact, m.account_number, m.created, " .
+ "m.modtime FROM machine m, subnet s WHERE m.status = 1 " .
+ "AND m.snet_id = s.snet_id AND " .
+ "s.status = 5 AND m.address != 'unassigned' " .
+ "ORDER BY m.address")
+ || exit $MR_DBMS_ERR;
+
+$sth->execute || exit $MR_DBMS_ERR;
+
+while (($address, $location, $name, $contact, $billingcontact, $accountnumber, $created, $modtime) =
+ $sth->fetchrow_array) {
+ $row = "$address\t$location\t$name\t$contact\t$billingcontact\t$accountnumber\t+NETWK-DORM\t$created\t$modtime\n";
+ $row =~ s/\0//g;
+ print DAT $row;
+ $count++;
+}
+
+# +NETWK-FSILG
+$sth = $dbh->prepare("SELECT m.address, m.location, m.name, m.contact, " .
+ "m.billing_contact, m.account_number, m.created, " .
+ "m.modtime FROM machine m, subnet s WHERE m.status = 1 " .
+ "AND m.snet_id = s.snet_id AND " .
+ "s.status = 8 AND m.address != 'unassigned' " .
+ "ORDER BY m.address")
+ || exit $MR_DBMS_ERR;
+
+$sth->execute || exit $MR_DBMS_ERR;
+
+while (($address, $location, $name, $contact, $billingcontact, $accountnumber, $created, $modtime) =
+ $sth->fetchrow_array) {
+ $row = "$address\t$location\t$name\t$contact\t$billingcontact\t$accountnumber\t+NETWK-FSILG\t$created\t$modtime\n";
+ $row =~ s/\0//g;
+ print DAT $row;
+ $count++;
+}
+
+# +NETWK-OCS
$sth = $dbh->prepare("SELECT m.address, m.location, m.name, m.contact, " .
- "m.account_number, m.created, m.modtime FROM " .
- "machine m, subnet s WHERE m.status = 1 " .
+ "m.billing_contact, m.account_number, m.created, " .
+ "m.modtime FROM machine m, subnet s WHERE m.status = 1 " .
"AND m.snet_id = s.snet_id AND " .
- "(s.status = 4 OR s.status = 5 OR s.status = 6) " .
+ "s.status = 6 AND s.name LIKE '%-DHREG' " .
+ "AND m.address != 'unassigned' ORDER BY m.address")
+ || exit $MR_DBMS_ERR;
+
+$sth->execute || exit $MR_DBMS_ERR;
+
+while (($address, $location, $name, $contact, $billingcontact, $accountnumber, $created, $modtime) =
+ $sth->fetchrow_array) {
+ $row = "$address\t$location\t$name\t$contact\t$billingcontact\t$accountnumber\t+NETWK-OCS\t$created\t$modtime\n";
+ $row =~ s/\0//g;
+ print DAT $row;
+ $count++;
+}
+
+# +NETWK-0
+$sth = $dbh->prepare("SELECT m.address, m.location, m.name, m.contact, " .
+ "m.billing_contact, m.account_number, m.created, " .
+ "m.modtime FROM machine m, subnet s WHERE m.status = 1 " .
+ "AND m.snet_id = s.snet_id AND " .
+ "(s.status = 4 OR s.status = 6) AND " .
+ "s.name NOT LIKE '%-DHREG' " .
"AND m.address != 'unassigned' ORDER BY m.address")
|| exit $MR_DBMS_ERR;
$sth->execute || exit $MR_DBMS_ERR;
-while (($address, $location, $name, $contact, $accountnumber, $created, $modtime) =
+while (($address, $location, $name, $contact, $billingcontact, $accountnumber, $created, $modtime) =
$sth->fetchrow_array) {
- if ($location eq "\0") {
- $location = "NONE";
- }
- if ($contact eq "\0") {
- $contact = "NONE";
- }
- if ($accountnumber eq "\0") {
- $accountnumber = "NONE";
- }
- $row = "$address\t$location\t$name\t$contact\t$accountnumber\t+NETWK-0\t$created\t$modtime\n";
+ $row = "$address\t$location\t$name\t$contact\t$billingcontact\t$accountnumber\t+NETWK-0\t$created\t$modtime\n";
$row =~ s/\0//g;
print DAT $row;
$count++;