Scroll to navigation

NETSNMP_TRAP_API(3) Net-SNMP NETSNMP_TRAP_API(3)

NAME

send_easy_trap, send_trap_vars, send_v2trap - send TRAPs or INFORMs from a Net-SNMP MIB module

SYNOPSIS

#include <net-snmp/agent/agent_trap.h>

void send_easy_trap(int trap, int specific);

void send_trap_vars(int trap, int specific, struct variable_list *vars);

void send_v2trap(struct variable_list *vars);

DESCRIPTION

These three routines may be used to send traps from a MIB module within the Net-SNMP agent (including an AgentX subagent).

send_easy_trap() sends an SNMPv1 trap (or the SNMPv2 equivalent) to the list of configured trap destinations (or "sinks"), using the provided values for the generic trap type, and specific trap value.

send_trap_vars() is similar, but appends the supplied list of variable bindings to the traps that are sent.

send_v2trap() uses the supplied list of variable bindings to form an SNMPv2 trap, which is sent to SNMPv2-capable sinks on the configured list. An equivalent INFORM is sent to the configuredq list of inform sinks. Sinks that can only handle SNMPv1 traps are skipped.

The various "send_trap()" calls allow you to specify traps in different formats. And the various "trapsink" directives allow you to specify destinations to receive different formats. But *all* traps are sent to *all* destinations, regardless of how they were specified.

I.e. it's

___ trapsink
/
send_easy_trap ___ [ Trap ] ____ trap2sink
___ [ Generator ]
send_v2trap / [ ] ----- informsink
____
trapsess *Not*
send_easy_trap -------------------> trapsink
send_v2trap -------------------> trap2sink
???? -------------------> informsink
???? -------------------> trapsess

WARNINGS

These routines are used to send the traps immediately they are called. Invoking them at the appropriate time is left to the MIB module programmer.

SEE ALSO

snmpd.conf(5), snmptrapd(8)

13 Aug 2010 V5.9.1