From b0e9185cca3340f42def574cb81aff5002604f34 Mon Sep 17 00:00:00 2001 From: Andrey Pazychev Date: Mon, 18 May 2020 00:21:57 +0300 Subject: [PATCH] WIP. Raisecom added 886.6.140 and 191 --- lib/SNMP/Info/Layer3/Raisecom.pm | 57 ++++++++++++++++++++++++-------- 1 file changed, 43 insertions(+), 14 deletions(-) diff --git a/lib/SNMP/Info/Layer3/Raisecom.pm b/lib/SNMP/Info/Layer3/Raisecom.pm index 86a1e30d..c66a6cc1 100755 --- a/lib/SNMP/Info/Layer3/Raisecom.pm +++ b/lib/SNMP/Info/Layer3/Raisecom.pm @@ -20,16 +20,21 @@ $VERSION = '3.70-135'; %GLOBALS = ( %SNMP::Info::Layer3::GLOBALS, - 'model_oid' => 'mib-2.47.1.1.1.1.13.1', - 'model_oid_41752' => 'enterprises.41752.6.1.1.1.19.0', - 'serial_oid' => 'mib-2.47.1.1.1.1.11.1', - 'serial_oid_41752' => 'enterprises.41752.6.1.1.1.14.0', - 'os_ver_oid' => 'mib-2.47.1.1.1.1.10.1', - 'os_ver_oid_41752' => 'enterprises.41752.6.1.1.1.1.0', - 'brom_oid' => 'mib-2.47.1.1.1.1.9.1', - 'brom_oid_41752' => 'enterprises.41752.6.1.1.1.13.0', - 'hw_oid' => 'mib-2.47.1.1.1.1.8.1', - 'hw_oid_41752' => 'enterprises.41752.6.1.1.1.2.0' + 'model_oid' => 'mib-2.47.1.1.1.1.13.1', + 'model_oid_41752' => 'enterprises.41752.6.1.1.1.19.0', + 'model_oid_886_6_140' => 'enterprises.8886.6.1.1.1.19.0', + 'serial_oid' => 'mib-2.47.1.1.1.1.11.1', + 'serial_oid_41752' => 'enterprises.41752.6.1.1.1.14.0', + 'serial_oid_886_6_140' => 'enterprises.8886.6.1.1.1.14.0', + 'os_ver_oid' => 'mib-2.47.1.1.1.1.10.1', + 'os_ver_oid_41752' => 'enterprises.41752.6.1.1.1.1.0', + 'os_ver_oid_886_6_140' => 'enterprises.8886.6.1.1.1.1.0', + 'brom_oid' => 'mib-2.47.1.1.1.1.9.1', + 'brom_oid_41752' => 'enterprises.41752.6.1.1.1.13.0', + 'brom_oid_886_6_140' => 'enterprises.8886.6.1.1.1.13.0', + 'hw_oid' => 'mib-2.47.1.1.1.1.8.1', + 'hw_oid_41752' => 'enterprises.41752.6.1.1.1.2.0', + 'hw_oid_886_6_140' => 'enterprises.8886.6.1.1.1.2.0', ); %FUNCS = ( %SNMP::Info::Layer3::FUNCS, ); @@ -43,7 +48,7 @@ sub vendor { sub os { my $obj = shift; my $id = $obj->id(); - if ($id =~ /41752\.26\.502/) { + if ($id =~ /41752\.26\.502/ or $id =~ /886\.6/) { return 'ros'; } return 'rcios'; @@ -52,12 +57,24 @@ sub os { sub os_ver { my $obj = shift; my $os_ver; my $brom; - if ($obj->id() =~ /41752\.26\.502/) { + my $id = $obj->id(); + if ($id =~ /41752\.26\.502/) { $obj->os_ver_oid_41752 =~ /ROS_(.*)\.(\d+)/; $os_ver = $1 . ' (' . $2 . ')'; $obj->brom_oid_41752 =~ /.*_BOOT_(.*)_(\d+)/; $brom = $1 . ' (' . $2 . ')'; } + elsif ($id =~ /886\.6\.140$/) { + $obj->os_ver_oid_886_6_140 =~ /ROS_(.*)\.ISCOM.*\.(\d*\.+\d*)/; + $os_ver = $1 . ' (' . $2 . ')'; + $obj->brom_oid_886_6_140 =~ /Bootstrap_([\d\W]+)\.ISCOM.*\.(\d*\.+\d*)/; + $brom = $1 . ' (' . $2 . ')'; + } + elsif ($id =~ /886\.6\.191$/) { + $obj->os_ver_oid_886_6_140 =~ /(\d*\.+\d*)\(Compiled/; + $os_ver = $1; + $brom = $obj->brom_oid_886_6_140; + } else { $os_ver = $obj->os_ver_oid || undef; $brom = $obj->brom_oid || undef; @@ -85,16 +102,23 @@ sub model { elsif ($id =~ /41752\.26\.502/) { return $obj->model_oid_41752 . ' HW:' . $obj->hvver; } + elsif ($id =~ /886\.6\.(140|191)$/) { + return $obj->model_oid_886_6_140 . ' HW:' . $obj->hvver; + } return $obj->SUPER::model(); } sub serial { my $obj = shift; my $serial = $obj->serial_oid || 'unknown'; - if ($obj->id() =~ /41752\.26\.502/) { + my $id = $obj->id(); + if ($id =~ /41752\.26\.502/) { return $obj->serial_oid_41752; } - return $serial; + elsif ($id =~ /886\.6\.(140|191)$/) { + return $obj->serial_oid_886_6_140; + } + return $obj->SUPER::serial; } sub hvver { @@ -104,6 +128,11 @@ sub hvver { $obj->hw_oid_41752 =~ /.*\sversion\s(.*)/; return $1; } + elsif ($id =~ /886\.6\.(140|191)$/) { + $obj->hw_oid_886_6_140 =~ /Hardware\s.*\sVersion\s(.*)/; + return $1; + } + return $obj->SUPER::hvver() } 1;