Fixed snmp interface wizard for switch dell powerconnect

This commit is contained in:
danielmaya 2017-11-20 10:28:08 +01:00
parent 04c271ae61
commit 18ba88dae2
1 changed files with 13 additions and 6 deletions

View File

@ -67,7 +67,7 @@ if ($snmpwalk) {
$snmp3_security_level, $snmp3_auth_method, $snmp3_auth_pass,
$snmp3_privacy_method, $snmp3_privacy_pass, 0, ".1.3.6.1.2.1.4.34.1.3", $tcp_port,
$server_to_exec);
// Build a [<interface id>] => [<interface ip>] array
if (!empty($snmp_int_ip)) {
foreach ($snmp_int_ip as $key => $value) {
@ -92,7 +92,7 @@ if ($snmpwalk) {
$snmpis = array_merge(($snmpis === false ? array() : $snmpis), ($ifxitems === false ? array() : $ifxitems));
$interfaces = array();
// We get here only the interface part of the MIB, not full mib
foreach($snmpis as $key => $snmp) {
@ -106,10 +106,17 @@ if ($snmpwalk) {
}
if (array_key_exists(1,$data)) {
$interfaces[$keydata2[1]][$keydata2[0]]['type'] = $data[0];
$interfaces[$keydata2[1]][$keydata2[0]]['value'] = $data[1];
}
else {
// Fixed for switch dell powerconnect
if(count($data) > 2) {
$interfaces[$keydata2[1]][$keydata2[0]]['type'] = $data[0];
unset($data[0]);
$interfaces[$keydata2[1]][$keydata2[0]]['value'] = implode(": ",$data);
} else {
$interfaces[$keydata2[1]][$keydata2[0]]['type'] = $data[0];
$interfaces[$keydata2[1]][$keydata2[0]]['value'] = $data[1];
}
} else {
$interfaces[$keydata2[1]][$keydata2[0]]['type'] = '';
$interfaces[$keydata2[1]][$keydata2[0]]['value'] = $data[0];
}