Package: snmp Version: 5.2.2-5 Severity: important Tags: patch While running snmptest, the following error message is seen. In this case it is doing a simple GET, but SETs will also fail this way. The variable is of type Ospfv3AreaIdTC which is an Unsigned32 (0..'FFFFFFFF'h) value. Due to the casting of the upper and lower bounds as a signed int for range checking, the values of 0 - 0x7FFFFFFF all fail. (See MIB definition below). Attached is a patch that will fixed this problem.
Variable: ospfv3AreaStatus.2 ospfv3AreaStatus.2: Unknown Object Identifier (Index out of range: 2 (ospfv3AreaId)) Variable: relevant parts of the MIB definition ( ref: draft-ietf-ospf-ospfv3-mib-09.txt) Ospfv3AreaIdTc ::= TEXTUAL-CONVENTION DISPLAY-HINT "d" STATUS current DESCRIPTION "An OSPFv3 Area Identifier" SYNTAX Unsigned32 (0..'FFFFFFFF'h) [...] ospfv3AreaTable OBJECT-TYPE SYNTAX SEQUENCE OF Ospfv3AreaEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Information describing the configured parameters and cumulative statistics of the router's attached areas." REFERENCE "OSPF Version 2, Section 6 The Area Data Structure" ::= { ospfv3Objects 2 } ospfv3AreaEntry OBJECT-TYPE SYNTAX Ospfv3AreaEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Information describing the configured parameters and cumulative statistics of one of the router's attached areas." INDEX { ospfv3AreaId } ::= { ospfv3AreaTable 1 } Ospfv3AreaEntry ::= SEQUENCE { ospfv3AreaId Ospfv3AreaIdTc, [...] } ospfv3AreaId OBJECT-TYPE SYNTAX Ospfv3AreaIdTc MAX-ACCESS not-accessible STATUS current DESCRIPTION "A 32-bit integer uniquely identifying an area. Area ID 0 is used for the OSPFv3 backbone." REFERENCE "OSPF Version 2, Appendix C.2 Area parameters" ::= { ospfv3AreaEntry 1 } -- System Information: Debian Release: testing/unstable APT prefers testing APT policy: (500, 'testing') Architecture: i386 (i686) Shell: /bin/sh linked to /bin/bash Kernel: Linux 2.6.16-2-686 Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Versions of packages snmp depends on: ii libc6 2.3.6-15 GNU C Library: Shared libraries ii libsnmp9 5.2.2-5 NET SNMP (Simple Network Managemen Versions of packages snmp recommends: ii perl-modules 5.8.8-6.1 Core Perl modules -- no debconf information
--- net-snmp-5.2.2/snmplib/mib.c 2005-09-26 17:42:35.000000000 -0600 +++ net-snmp-5.2.2-fixed/snmplib/mib.c 2006-08-15 15:36:10.000000000 -0600 @@ -5158,8 +5158,8 @@ struct range_list *rp = tp->ranges; int ok = 0; while (!ok && rp) - if ((rp->low <= (int) subid) - && ((int) subid <= rp->high)) + if (((unsigned int) rp->low <= subid) + && (subid <= (unsigned int) rp->high)) ok = 1; else rp = rp->next;