Exemplo n.º 1
0
     $pxeg = $db->dbArrayResultsAssoc($return);
 }
 if (count($pxeg) === 0) {
     $pxe_group = "No PXE Groups defined";
 } else {
     $pxe_group = $misc->GenDropMenuWSelectedPXE($pxeg, $pxe_group, 'pxe_group');
 }
 // do some calculations on the list of available subnets
 $sql = "SELECT * FROM `conf_subnets`";
 if (($return = $db->dbQuery($val->ValidateSQL($sql, $dbconn), $dbconn)) !== -1) {
     $data = $db->dbArrayResultsAssoc($return);
 }
 if (count($data) !== 0) {
     foreach ($data as $key => $value) {
         if ($value['enable-scope'] === "true" && !empty($value['scope-range-1']) && !empty($value['scope-range-2'])) {
             $ip_counts[] = $misc->GetAvailableIPAddresses($value, $value['subnet-name']);
         } else {
             if (!empty($value['pool'])) {
                 // process assigned pool IP addresses minus IP's engaged in `conf_leases` table
                 $sql = "SELECT * FROM `conf_pools` WHERE `pool-name` = \"" . $value['pool'] . "\"";
                 if (($return = $db->dbQuery($val->ValidateSQL($sql, $dbconn), $dbconn)) !== -1) {
                     $pool_array = $db->dbArrayResultsAssoc($return);
                     foreach ($pool_array as $k => $v) {
                         $ip_counts[] = $misc->GetAvailableIPAddresses($v, $value['subnet-name']);
                     }
                 }
             } else {
                 // look at broadcast and mask to determine range first
                 // process everything else by looking up all static hosts and comparing to broadcast and subnet mask
                 $sql = "SELECT * FROM `conf_hosts` WHERE `subnet-name` = \"" . $value['subnet-name'] . "\"";
                 if (($return = $db->dbQuery($val->ValidateSQL($sql, $dbconn), $dbconn)) !== -1) {