php net-snmp trap,net-snmp 5.5学习笔记 trap部分

net-snmp 5.5学习笔记

snmptarp动作学习

与snmpget动作相差无几,只不过调用函数时参数不同。参考:net-snmp-5.5/apps/snmptrap.c

只需要将open_session换为snmp_add和netsnmp_transport_open_client即可

netsnmp_session *snmp_add(netsnmp_session *,

struct netsnmp_transport_s *,

int (*fpre_parse) (netsnmp_session *,

struct netsnmp_transport_s

*, void *, int),

int (*fpost_parse) (netsnmp_session *,

netsnmp_pdu *, int));

将一些设置添加到session中

netsnmp_transport*

netsnmp_transport_open_client(const char* application, const char* str);

打开trap的客户端

产生netsnmp_transport结构体用于trap

void snmp_shutdown(const char *type);

关闭应用程序,保存任何需要持久性存储,并进行适当的清理。

参数:config文件中的"type"使用的类型标签

snmptarpd动作学习        参考:net-snmp-5.5/apps/snmptrapd.c

int init_agent (const char * app);

初始化agent。调用init_agent_read_config设置适当的默认存储空间,

NETSNMP_DS_LIB_APPTYPE应用程序的配置文件。调用init_agent之前需要调用init_snmp。

参数:

应用程序的配置文件被读取,获取存储在默认的存储

返回:

返回非零值失败,0为成功。

struct config_line*

register_config_handler(const char *filePrefix,

const char *token,

void (*parser) (const char *, char *),

void (*releaser) (void),

const char *usageLine);

从配置文件中读取参数。

参数:

filePrefix      应用程序名

token           文件中的token

parser          函数指针,解析token的函数

releaser        处理解析后的清理工作

usageLine       token的可选值

返回:

返回config_line,用于表示token

char *snmp_log_syslogname (const char *pstr);

调用openlog传入应用程序名

void init_usm_conf(const char *app);

不知道干啥的,没有资料。

netsnmp_transport*

netsnmp_transport_open_server(const char* application, const char* str);

打开trap的server端

void netsnmp_transport_free(netsnmp_transport *t);

释放一个netsnmp_transport.

void netsnmp_external_event_info(int *numfds,

fd_set *readfds,

fd_set *writefds,

fd_set *exceptfds);

取得select搜需要等待的参数。

snmptarp和snmptarpd的基本流程为:

1.初始化session(snmp_sess_init)

2.打开session(snmp_open)

3.打开trap客户端或者服务端(netsnmp_transport_open_client or netsnmp_transport_open_server)

4.客户端发送trap pdu。服务端等待接收trap

5.关闭应用程序(snmp_shutdown)

阅读(620) | 评论(0) | 转发(0) |

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值