2013-03-02 88 views
0

我正在使用net-snmp。给定一个特定的OID,如.1.3.6.1,如何找到相应的 MIB/module/filename/anything其中描述了OID?给定一个OID,我如何找到相应的MIB?

我浏览了所有的#include file in <net-snmp/*>,但我无法弄清楚。

我期待的线沿线的东西:

struct module *netsnmp_get_module_from_oid(oid *, int oidlen); 
+0

关 - 当然还有你有没有的net-snmp的源代码,看看你会发现parse.c。 – 2013-03-02 20:43:31

+0

[**请阅读此问题及其答案**](http://stackoverflow.com/questions/13641802/why-the-description-of-the-snmp-oid-giving-null/13776327#13776327) – 2013-03-02 20:46:04

+0

是的,我有源代码,不,这个问题是关于获取默认情况下未保存的OID描述文本。 – 2013-03-02 21:00:59

回答

0

我想通了。这是一个3个步骤:

struct tree *head = get_tree_head(); 
struct tree *t = get_tree(o, l, head); 
struct module *m = find_module(t->modid); 

这使模块名,文件名,并通过然后可以进一步抬头模块国产进口的列表。当从原来的问题.1.3.6.1例如调用这个,这给了我:

NAME=SNMPv2-SMI 
FILE=/usr/share/mibs/ietf/SNMPv2-SMI 
COUNT=3 
#0: LABEL=joint-iso-ccitt, ID=-1 
#1: LABEL=ccitt, ID=-1 
#2: LABEL=iso, ID=-1 
相关问题