› Foros › PC › Software libre
// {{{ _doNetworks()
function _doNetworks()
{
$s_macNodeName = $this->_is10_4 ? 'MAC Address' : 'ethernet_address';
$s_maskNodeName = $this->_is10_4 ? 'SubnetMasks' : 'subnet_mask';
$s_routerNodeName = $this->_is10_4 ? 'Router' : 'router_address';
$s_node = $this->_getDataNode('SPNetworkDataType');
preg_match_all('/^\t{3}<dict>.*?^\t{3}<\/dict>/ms', $s_node, $a_matches);
foreach ($a_matches[0] as $i => $s_node) {
$s_ip = $this->_getValByKey('ip_address', $s_node);
$s_updown = ($s_ip == 'N/A') ? 'Down' : 'Up';
$s_name = $this->_getValByKey('_name', $s_node) . ' - ' . $this->_getValByKey('interface', $s_node);
$s_mask = $this->_getValByKey($s_maskNodeName, $s_node);
if ($s_updown == 'Up') {
$s_subnet = long2ip(ip2long($s_ip) & ip2long($s_mask));
}
else {
$s_subnet = 'N/A';
}
$this->_data['CONTENT']['NETWORKS'][$i]['DESCRIPTION'] = $s_name;
$this->_data['CONTENT']['NETWORKS'][$i]['TYPE'] = $this->_getValByKey('type', $s_node);
$this->_data['CONTENT']['NETWORKS'][$i]['MACADDR'] = $this->_getValByKey($s_macNodeName, $s_node);
$this->_data['CONTENT']['NETWORKS'][$i]['STATUS'] = $s_updown;
$this->_data['CONTENT']['NETWORKS'][$i]['IPADDRESS'] = $s_ip;
$this->_data['CONTENT']['NETWORKS'][$i]['IPMASK'] = $s_mask;
$this->_data['CONTENT']['NETWORKS'][$i]['IPGATEWAY'] = $this->_getValByKey($s_routerNodeName, $s_node);
$this->_data['CONTENT']['NETWORKS'][$i]['IPDHCP'] = 'Unknown';
$this->_data['CONTENT']['NETWORKS'][$i]['IPSUBNET'] = $s_subnet;
$this->_data['CONTENT']['NETWORKS'][$i]['SPEED'] = $this->_getValByKey('MediaSubType', $s_node);
}
}
// }}}
// {{{ _doNetworks()
function _doNetworks()
{
$s_macNodeName = $this->_is10_4 ? 'MAC Address' : 'ethernet_address';
$s_maskNodeName = $this->_is10_4 ? 'SubnetMasks' : 'subnet_mask';
$s_routerNodeName = $this->_is10_4 ? 'Router' : 'router_address';
$s_node = $this->_getDataNode('SPNetworkDataType');
preg_match_all('/^\t{3}<dict>.*?^\t{3}<\/dict>/ms', $s_node, $a_matches);
foreach ($a_matches[0] as $i => $s_node) {
$s_ip = $this->_getValByKey('ip_address', $s_node);
$s_updown = ($s_ip == 'N/A') ? 'Down' : 'Up';
$s_name = $this->_getValByKey('_name', $s_node) . ' - ' . $this->_getValByKey('interface', $s_node);
$s_mask = $this->_getValByKey($s_maskNodeName, $s_node);
if ($s_updown == 'Up') {
$s_subnet = long2ip(ip2long($s_ip) & ip2long($s_mask));
$this->_data['CONTENT']['NETWORKS'][$i]['DESCRIPTION'] = $s_name;
$this->_data['CONTENT']['NETWORKS'][$i]['TYPE'] = $this->_getValByKey('type', $s_node);
$this->_data['CONTENT']['NETWORKS'][$i]['MACADDR'] = $this->_getValByKey($s_macNodeName, $s_node);
$this->_data['CONTENT']['NETWORKS'][$i]['STATUS'] = $s_updown;
$this->_data['CONTENT']['NETWORKS'][$i]['IPADDRESS'] = $s_ip;
$this->_data['CONTENT']['NETWORKS'][$i]['IPMASK'] = $s_mask;
$this->_data['CONTENT']['NETWORKS'][$i]['IPGATEWAY'] = $this->_getValByKey($s_routerNodeName, $s_node);
$this->_data['CONTENT']['NETWORKS'][$i]['IPDHCP'] = 'Unknown';
$this->_data['CONTENT']['NETWORKS'][$i]['IPSUBNET'] = $s_subnet;
$this->_data['CONTENT']['NETWORKS'][$i]['SPEED'] = $this->_getValByKey('MediaSubType', $s_node);
}
else {
$s_subnet = 'N/A';
}
}