我在Windows上使用net-snmp C库。 我想parsingMIB文件中与陷阱有关的信息。
我需要一些示例代码来做到这一点。 我在http://www.net-snmp.org/上找不到任何有用的东西
以下是一些使用net-snmp库解析MIB文件的示例代码。 在使用这个代码之前,你需要在你的项目属性中引用或者添加net-snmp的Include和Lib目录:
#include "stdafx.h" #include <net-snmp/net-snmp-config.h> #include <net-snmp/net-snmp-includes.h> #include <net-snmp/definitions.h> #include <net-snmp/library/tools.h> #include <net-snmp/mib_api.h> #include <net-snmp/library/mib.h> #include <net-snmp/library/parse.h> int _tmain(int argc, _TCHAR* argv[]) { struct tree *tp; struct tree *tree_head = NULL ; FILE *fp = NULL; char str[] = "c:\\MyMIBFileDir\\My.mib"; netsnmp_ds_set_int(NETSNMP_DS_LIBRARY_ID, NETSNMP_DS_LIB_MIB_WARNINGS , 2); netsnmp_ds_toggle_boolean(NETSNMP_DS_LIBRARY_ID, NETSNMP_DS_LIB_SAVE_MIB_DESCRS); netsnmp_init_mib(); add_mibdir("c:\\MyMIBFileDir\\"); tree_head = read_mib(str); if ( tree_head ) { //Successfully parsed the MIB } // Full traversal of the subtree for (tp = tree_head; tp; tp = tp->next_peer) // Here you can do custom parsing fclose(fp); return 0; }