我正在为 net-snmp 开发共享库和子代理。我需要针对特定硬件事件发送 v3 陷阱。我想知道 send_v3trap API 的上下文值需要填写什么值。
void send_v3trap(netsnmp_variable_list * vars,const char * context )
此上下文值是否与用户定义的引擎 ID 相同?即,需要在 snmptrapd.conf 中配置的一个如下?
createUser -e ENGINEID myuser SHA "my authentication pass" AES "my encryption pass"
更多关于在这个链接中配置
有一个示例源代码可用于发送 v2traps
通过查看 net-snmp 源代码,send_v3trap 内部调用了 send_v2trap,最终,
/* A context name was provided, so copy it and its length to the v2 pdu
* template. */
if (context != NULL)
{
template_v2pdu->contextName = strdup(context);
template_v2pdu->contextNameLen = strlen(context);
}