- 论坛徽章:
- 0
|
int main()
{
netsnmp_session session, *ss;
netsnmp_pdu *pdu ;
oid objid_enterprise[] = { 1, 3, 6, 1, 4, 1,969, 6 };
oid objid_snmptrap[] = { 1, 3, 6, 1, 4, 1, 969, 6, 1, 2, 0 };
SOCK_STARTUP;
snmp_sess_init(&session);
printf("1111111111111\n");
session.version=SNMP_VERSION_2c;
session.callback = snmp_input;
session.callback_magic = NULL;
netsnmp_ds_set_int(NETSNMP_DS_LIBRARY_ID, NETSNMP_DS_LIB_DEFAULT_PORT, SNMP_TRAP_PORT);
session.peername = "192.168.0.217";//要发送的主机Ip
session.community ="public";
session.community_len=strlen(session.community);
printf("2222222222222222\n");
ss = snmp_open(&session);
printf("3333333333333\n");
if (ss == NULL)
{
//diagnose snmp_open errors with the input netsnmp_session pointer
snmp_sess_perror("snmptrap", &session);
SOCK_CLEANUP;
exit(1);
}
pdu = snmp_pdu_create( SNMP_MSG_TRAP2);
int temp = 0;
temp = snmp_add_var (pdu, objid_enterprise, sizeof(objid_enterprise) / sizeof(oid),'s', "Agent");
printf("temp :%d\r\n",temp);
。。。。。。。。。。。。。。。。。。。。。。。。。
。。。。。。。。。。。。。。。。。。。。。。。。。
if (snmp_add_var (pdu, objid_snmptrap, sizeof(objid_snmptrap) / sizeof(oid),
's', "12223") != 0)
{
printf("55555555555555555555\n");
//snmp_perror(objid_snmptrap); //
SOCK_CLEANUP;
exit(1);
}
。。。。。。。。。。。。。。。。。。。。
。。。。。。。。。。。。。。。。。。。。
return TRUE;
}
程序如上,我用了两个snmp_var_add(),结果第二个出错,是不是不能同时用这个函数两次? |
|