diff --git a/Changes b/Changes index a99b5d72..bc5a6a49 100644 --- a/Changes +++ b/Changes @@ -1,5 +1,11 @@ SNMP::Info - Friendly OO-style interface to Network devices using SNMP. +version 3.37 (2017-07-11) + + [ENHANCEMENTS] + + * Layer3::Juniper fixed to return os_ver for JUNOS 14.x and higher + version 3.36 (2017-06-28) [ENHANCEMENTS] diff --git a/lib/SNMP/Info/Layer3/Juniper.pm b/lib/SNMP/Info/Layer3/Juniper.pm index 2ef244df..cf256079 100644 --- a/lib/SNMP/Info/Layer3/Juniper.pm +++ b/lib/SNMP/Info/Layer3/Juniper.pm @@ -110,15 +110,18 @@ sub layers { sub os_ver { my $juniper = shift; - my $descr = $juniper->description() || ''; - my $lldp_descr = $juniper->lldp_sysdesc() || ''; + my $sys_descr = $juniper->description() || ''; + my $lldp_descr = $juniper->lldp_sysdesc() || ''; - if ( $descr =~ m/kernel JUNOS ([^,\s]+)/ ) { - return $1; - } - elsif ( $lldp_descr =~ m/version\s(\S+)\s/ ) { - return $1; + foreach my $descr ($sys_descr, $lldp_descr) { + if ( $descr =~ m/kernel JUNOS ([^,\s]+)/ ) { + return $1; + } + elsif ( $descr =~ m/version\s(\S+)\s/ ) { + return $1; + } } + return; }