xxxx18一60岁hd中国/日韩女同互慰一区二区/西西人体扒开双腿无遮挡/日韩欧美黄色一级片 - 色护士精品影院www

  • 大小: 5KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發(fā)布日期: 2021-05-09
  • 語(yǔ)言: 其他
  • 標(biāo)簽: net-snmp??snmp??trap??snmptrapd??

資源簡(jiǎn)介

用net-snmp的c apis實(shí)現(xiàn)trap的接收,類似于snmptrapd工具的實(shí)現(xiàn),但是更為簡(jiǎn)單。

資源截圖

代碼片段和文件信息

#include?
#include?
#include?
#include?




int??????netsnmp_running?=?1;

/************************************************************************
**?
**?
************************************************************************/

int?snmp_input(int?op?netsnmp_session?*session?int?reqid?netsnmp_pdu?*pdu?void?*magic)
{
????printf(“We?got?a?trap:\n“);
????struct?variable_list?*vars;
????for(vars?=?pdu->variables;?vars;?vars?=?vars->next_variable)
????{
????????print_variable(vars->name?vars->name_length?vars);
????}
????return?1;
}

static?int?pre_parse(netsnmp_session?*?session?netsnmp_transport?*transport
??????????void?*transport_data?int?transport_data_length)
{
return?1;
}

static?netsnmp_session?*snmptrapd_add_session(netsnmp_transport?*t)
{
????netsnmp_session?sess?*session?=?&sess?*rc?=?NULL;

????snmp_sess_init(session);
????session->peername?=?SNMP_DEFAULT_PEERNAME;??/*?Original?code?had?NULL?here?*/
????session->version?=?SNMP_DEFAULT_VERSION;
????session->community_len?=?SNMP_DEFAULT_COMMUNITY_LEN;
????session->retries?=?SNMP_DEFAULT_RETRIES;
????session->timeout?=?SNMP_DEFAULT_TIMEOUT;
????session->callback?=?snmp_input;
????session->callback_magic?=?(void?*)?t;
????session->authenticator?=?NULL;
????sess.isAuthoritative?=?SNMP_SESS_UNKNOWNAUTH;

????rc?=?snmp_add(session?t?pre_parse?NULL);
????if?(rc?==?NULL)
{
????????snmp_sess_perror(“snmptrapd“?session);
????}
????return?rc;
}

static?void?snmptrapd_close_sessions(netsnmp_session?*?sess_list)
{
????netsnmp_session?*s?=?NULL?*next?=?NULL;

????for?(s?=?sess_list;?s?!=?NULL;?s?=?next)
{
????????next?=?s->next;
????????snmp_close(s);
????}
}

static?void?snmptrapd_main_loop(void)
{
int count?numfds?block;
fd_set readfdswritefdsexceptfds;
struct?timeval??timeout?*tvp;

printf(“snmptrapd_main_loop\n“);

while?(netsnmp_running)
{
numfds?=?0;
FD_ZERO(&readfds);
FD_ZERO(&writefds);
FD_ZERO(&exceptfds);
block?=?0;
tvp?=?&timeout;
timerclear(tvp);
tvp->tv_sec?=?5;
snmp_select_info(&numfds?&readfds?tvp?&block);
if?(block?==?1)
{
tvp?=?NULL;?????????/*?block?without?timeout?*/
}

#ifndef?NETSNMP_FEATURE_REMOVE_FD_EVENT_MANAGER
netsnmp_external_event_info(&numfds?&readfds?&writefds?&exceptfds);
#endif?/*?NETSNMP_FEATURE_REMOVE_FD_EVENT_MANAGER?*/

count?=?select(numfds?&readfds?&writefds?&exceptfds?tvp);
printf(“count?=?%d\n“?count);
if?(count?>?0)
{
#ifndef?NETSNMP_FEATURE_REMOVE_FD_EVENT_MANAGER
netsnmp_dispatch_external_events(&count?&readfds?&writefds?&exceptfds);
#endif?/*?NETSNMP_FEATURE_REMOVE_FD_EVENT_MANAGER?*/

/*?If?there?are?any?more?events?after?external?events?then?try?SNMP?events.?*/
if?(count?>?0)
{
snmp_read(&readfds);
}
}
else?
{
switch?(count)

?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----

?????文件???????6725??2013-06-06?10:57??snmptrapd\snmptrapd-linux.c

?????文件???????7178??2013-06-06?10:49??snmptrapd\snmptrapd-windows.cpp

?????目錄??????????0??2013-06-09?10:44??snmptrapd

-----------?---------??----------?-----??----

????????????????13903????????????????????3


評(píng)論

共有 條評(píng)論