Hi there,

On Linux, snmpd doesn't respond when walking ipv6InterfaceTable.

  $ snmpwalk -v 2c -c public localhost .1.3.6.1.2.1.4.30
  IP-MIB::ipv6InterfaceTable = No Such Object available on this agent at this 
OID

According to the debug message, an error occurs at 4th column:

  Received SNMP packet(s) from UDP: [127.0.0.1]:32769
    GETNEXT message
      -- IP-MIB::ipv6InterfaceTable
  unknown column 4 in _ipv6InterfaceTable_get_column

And then, according to RFC4293, column 4 is reserved and the description
is commentted out.

  -- This object ID is reserved as it was used in earlier versions of
  -- the MIB module.  In theory, OIDs are not assigned until the
  -- specification is released as an RFC; however, as some companies
  -- may have shipped code based on earlier versions of the MIB, it
  -- seems best to reserve this OID.  This OID had been
  -- ipv6InterfacePhysicalAddress.
  -- ::= { ipv6InterfaceEntry 4}

Regarding this, I think _${context}_get_column() in mfd-interface.m2c
should reply SNMP_NOSUCHINSTANCE on the reserved OID.
I suppose we can assume the OID is reserved when the number of column
is between the minimum and the maximum.

Here's the patch for CVS (2007/Feb/19)
I confirmed this patch with linux-2.6.20 and OpenSUSE 10.2.

Thank you,
----
Mitsuru Chinen <[EMAIL PROTECTED]>


Index: local/mib2c-conf.d/
===================================================================
RCS file: /cvsroot/net-snmp/net-snmp/local/mib2c-conf.d/mfd-interface.m2c,v
retrieving revision 1.73
diff -u -p -r1.73 mfd-interface.m2c
--- local/mib2c-conf.d/mfd-interface.m2c        23 Jan 2007 22:38:17 -0000      
1.73
+++ local/mib2c-conf.d/mfd-interface.m2c        19 Feb 2007 03:44:27 -0000
@@ -876,10 +876,18 @@ rc = ${node}_get(rowreq_ctx, $m2c_node_v
 @   end@ # for each column
 
      default:
-         snmp_log(LOG_ERR,"unknown column %d in _${context}_get_column\n", 
column);
-         break;
-    }
+        if ($context.uc_MIN_COL <= column && column <= $context.uc_MAX_COL) {
+            DEBUGMSGTL(("internal:${context}",
+                "assume column %d in _${context}_get_column\n is reserved\n"
+                column));
+            rc = SNMP_NOSUCHINSTANCE;
+        } else {
+            snmp_log(LOG_ERR,
+                "unknown column %d in _${context}_get_column\n", column);
+        }
+        break;
 
+    }
     return rc;
 } /* _${context}_get_column */
 

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Net-snmp-coders mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/net-snmp-coders

Reply via email to