librenms/includes/discovery/cisco-cef.inc.php

41 lines
1.7 KiB
PHP
Raw Normal View History

<?php
$cefs = array();
2015-07-13 18:10:26 +00:00
$cefs = snmpwalk_cache_threepart_oid($device, 'CISCO-CEF-MIB::cefSwitchingPath', $cefs);
d_echo($cefs);
2015-07-13 18:10:26 +00:00
if (is_array($cefs)) {
if (!is_array($entity_array)) {
echo 'Caching OIDs: ';
$entity_array = array();
echo ' entPhysicalDescr';
$entity_array = snmpwalk_cache_multi_oid($device, 'entPhysicalDescr', $entity_array, 'ENTITY-MIB');
echo ' entPhysicalName';
$entity_array = snmpwalk_cache_multi_oid($device, 'entPhysicalName', $entity_array, 'ENTITY-MIB');
echo ' entPhysicalModelName';
$entity_array = snmpwalk_cache_multi_oid($device, 'entPhysicalModelName', $entity_array, 'ENTITY-MIB');
}
2015-07-13 18:10:26 +00:00
foreach ($cefs as $entity => $afis) {
$entity_name = $entity_array[$entity]['entPhysicalName'].' - '.$entity_array[$entity]['entPhysicalModelName'];
echo "\n$entity $entity_name\n";
foreach ($afis as $afi => $paths) {
echo " |- $afi\n";
foreach ($paths as $path => $path_name) {
echo ' | |-'.$path.': '.$path_name['cefSwitchingPath']."\n";
$cef_exists[$device['device_id']][$entity][$afi][$path] = 1;
if (dbFetchCell('SELECT COUNT(*) from `cef_switching` WHERE device_id = ? AND entPhysicalIndex = ? AND afi=? AND cef_index=?', array($device['device_id'], $entity, $afi, $path)) != '1') {
dbInsert(array('device_id' => $device['device_id'], 'entPhysicalIndex' => $entity, 'afi' => $afi, 'cef_path' => $path), 'cef_switching');
2015-07-13 18:10:26 +00:00
echo '+';
}
}
}
}
unset($cefs);
2015-07-13 18:10:26 +00:00
}//end if
// FIXME - need to delete old ones. FIXME REALLY.
2015-07-13 18:10:26 +00:00
echo "\n";
unset($entity_array);