Tony Murray 8f4a041b8d Fix Calix OS definitions (#8832)
* Fix Calix OS definitions

The main change is EXA (E7, etc) and B6 (Occam) devices are now their own OS

Now the follow OS exist:
exa: E7 EXA, E5-400, E5-48, E3-48, E3-8G
occamos: B6

Unchanged:
calix: E5-1**, E3-12C
axos: E7-2 AXOS, E9-2, E3-2, E5-520, E5-16F, E3-16F, E5-30x

* fix tests
exa_e7-2 seems like bogus data.

* additional tests, fix an error in the yaml

* Remove extra line return

* Add missed file
2018-07-23 12:44:53 -05:00

62 lines
2.9 KiB
PHP

<?php
/*
* E5-1xx portion of LibreNMS Calix OS Polling module
*
* Copyright (c) 2016 Chris A. Evans <thecityofguanyu@outlook.com>
*
* This program is free software: you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
* Free Software Foundation, either version 3 of the License, or (at your
* option) any later version. Please see LICENSE.txt at the top level of
* the source code distribution for details.
*/
if (strstr($device['sysObjectID'], '.6321.1.2.3')) { // E5-1xx Series
if (strpos($device['sysObjectID'], '.1.3.6.1.4.1.6321.1.2.3.4') !== false) { // E5-121
$version = snmp_get($device, 'iesSlotModuleFWVersion.0.0', '-Oqv', '+E5-121-IESCOMMON-MIB', 'calix');
$hardware = snmp_get($device, 'iesSlotModuleDescr.0.0', '-Ovqs', '+E5-121-IESCOMMON-MIB', 'calix');
$serial = snmp_get($device, 'iesChassisSerialNumber.0', '-OQv', '+E5-121-IESCOMMON-MIB', 'calix');
$features = '';
$version = str_replace('"', '', $version);
$serial = str_replace('"', '', $serial);
$hardware = str_replace('"', '', $hardware);
}
if (strpos($device['sysObjectID'], '.1.3.6.1.4.1.6321.1.2.3.3') !== false) { // E5-120
$version = snmp_get($device, 'iesSlotModuleFWVersion.0.0', '-Oqv', '+E5-120-IESCOMMON-MIB', 'calix');
$hardware = snmp_get($device, 'iesSlotModuleDescr.0.0', '-Ovqs', '+E5-120-IESCOMMON-MIB', 'calix');
$serial = snmp_get($device, 'iesChassisSerialNumber.0', '-OQv', '+E5-120-IESCOMMON-MIB', 'calix');
$features = '';
$version = str_replace('"', '', $version);
$serial = str_replace('"', '', $serial);
$hardware = str_replace('"', '', $hardware);
}
if (strpos($device['sysObjectID'], '.1.3.6.1.4.1.6321.1.2.3.2') !== false) { // E5-111
$version = snmp_get($device, 'iesSlotModuleFWVersion.0.0', '-Oqv', '+E5-111-IESCOMMON-MIB', 'calix');
$hardware = snmp_get($device, 'iesSlotModuleDescr.0.0', '-Ovqs', '+E5-111-IESCOMMON-MIB', 'calix');
$serial = snmp_get($device, 'iesChassisSerialNumber.0', '-OQv', '+E5-111-IESCOMMON-MIB', 'calix');
$features = '';
$version = str_replace('"', '', $version);
$serial = str_replace('"', '', $serial);
$hardware = str_replace('"', '', $hardware);
}
if (strpos($device['sysObjectID'], '.1.3.6.1.4.1.6321.1.2.3.1') !== false) { // E5-110
$version = snmp_get($device, 'iesSlotModuleFWVersion.0.0', '-Oqv', '+E5-110-IESCOMMON-MIB', 'calix');
$hardware = snmp_get($device, 'iesSlotModuleDescr.0.0', '-Ovqs', '+E5-110-IESCOMMON-MIB', 'calix');
$serial = snmp_get($device, 'iesChassisSerialNumber.0', '-OQv', '+E5-110-IESCOMMON-MIB', 'calix');
$features = '';
$version = str_replace('"', '', $version);
$serial = str_replace('"', '', $serial);
$hardware = str_replace('"', '', $hardware);
}
}