A few time a go I developed a SNMP subagent with its own MIB and until 
now it worked perfectly. Since some days ago there is a part of the 
tree that is not 'walkable'. After searching for a bug in my snmp 
agent, I found (or suspect) that the problem can be in the MIB
intepretation. 

The important parts of the MIB (3475 lines): 

CounterIndex          ::= TEXTUAL-CONVENTION 
    DISPLAY-HINT      "d" 
    STATUS            current 
    DESCRIPTION       "A unique value, for each type of  counter in 
the managed system. " 
    SYNTAX             Integer32 (0..65535) 

As you can see the syntax range starts at 0. 

Then, (after some other values) I define the first table for my MIB: 

-- TABLE zone 
zoneTable OBJECT-TYPE 
    SYNTAX SEQUENCE OF ZoneEntry 
    MAX-ACCESS not-accessible 
    STATUS current 
    DESCRIPTION "Per Zone query Statistics" 
    ::= { b9Zones 1 } 

zoneEntry OBJECT-TYPE 
    SYNTAX ZoneEntry 
    MAX-ACCESS not-accessible 
    STATUS current 
    DESCRIPTION "An entry for Per Zone query Statistics" 
    INDEX { zoneIndex } 
    ::= { zoneTable  1 } 

ZoneEntry::= SEQUENCE { 
    zoneIndex CounterIndex, 
    zoneName        DisplayString, 
    b9zoneQueriesRequestv4    Counter32, 
    b9zoneQueriesRequestv6    Counter32, 
  [....] 

zoneIndex OBJECT-TYPE 
    SYNTAX      CounterIndex 
    MAX-ACCESS  not-accessible 
    STATUS      current 
    DESCRIPTION "zone Table Index" 
    ::= { zoneEntry 1 } 

And just after it, the second table: 

-- TABLE view 
viewTable OBJECT-TYPE 
    SYNTAX SEQUENCE OF ViewEntry 
    MAX-ACCESS not-accessible 
    STATUS current 
    DESCRIPTION "Outgoing queries per view" 
    ::= { b9Views 1 } 

viewEntry OBJECT-TYPE 
    SYNTAX ViewEntry 
    MAX-ACCESS not-accessible 
    STATUS current 
    DESCRIPTION "An entry for Outgoing queries per view" 
    INDEX { viewIndex } 
    ::= { viewTable  1 } 

ViewEntry::= SEQUENCE { 
    viewIndex CounterIndex, 
    viewName        DisplayString, 
  [...] 

viewIndex OBJECT-TYPE 
    SYNTAX      CounterIndex 
    MAX-ACCESS  not-accessible 
    STATUS      current 
    DESCRIPTION "view Table Index" 
    ::= { viewEntry 1 } 

If your compare them they are practically the same struct (as they 
are script-created). I checked the MIB with smilint and it gives a 
PERFECT (no errors nor warnings). 

Without my agent running, only checking the tree, I can do: 

# snmptranslate -On BIND-MIB::zoneIndex.0 
.1.3.6.1.4.1.8072.9999.9999.1768.1.5.1.1.1.0 

But for viewTable: 

# snmptranslate -On BIND-MIB::viewIndex.0 
BIND-MIB::viewIndex.0: Unknown Object Identifier (Index out of range: 
0 (viewIndex)) 

If I ask for a Index starting at any other number: 

# snmptranslate -On BIND-MIB::viewIndex.11 
.1.3.6.1.4.1.8072.9999.9999.1768.1.6.1.1.1.11 

Why this different behavior?? I tried to remove the first table from 
the MIB and viewIndex.0 still fails. 

I remark that the same MIB was working in the past. Recently I 
upgraded my Debian System form Lenny to Squeeze (stable) but both use 
net-snmp 5.2.0. 

Thanks for any hint 


-- 
----------------------------------
Marc Franquesa
Lady 3Jane http://www.l3jane.net/
Nexus




------------------------------------------------------------------------------
What You Don't Know About Data Connectivity CAN Hurt You
This paper provides an overview of data connectivity, details
its effect on application quality, and explores various alternative
solutions. http://p.sf.net/sfu/progress-d2d
_______________________________________________
Net-snmp-users mailing list
Net-snmp-users@lists.sourceforge.net
Please see the following page to unsubscribe or change other options:
https://lists.sourceforge.net/lists/listinfo/net-snmp-users

Reply via email to