From 58c8e0f8ca3d322eac22828d396851743ecdfbc2 Mon Sep 17 00:00:00 2001 From: Dirk Ziegelmeier Date: Thu, 15 Sep 2016 10:41:05 +0200 Subject: [PATCH] Implement request by Marco Veeneman: Make snmp_send_trap() public --- src/apps/snmp/snmp_traps.c | 11 ++++++----- src/include/lwip/apps/snmp.h | 1 + 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/apps/snmp/snmp_traps.c b/src/apps/snmp/snmp_traps.c index 8061766e..61ceee65 100644 --- a/src/apps/snmp/snmp_traps.c +++ b/src/apps/snmp/snmp_traps.c @@ -149,9 +149,10 @@ snmp_get_auth_traps_enabled(void) /** * Sends an generic or enterprise specific trap message. * - * @param generic_trap is the trap code * @param eoid points to enterprise object identifier + * @param generic_trap is the trap code * @param specific_trap used for enterprise traps when generic_trap == 6 + * @param varbinds linked list of varbinds to be sent * @return ERR_OK when success, ERR_MEM if we're out of memory * * @note the use of the enterprise identifier field @@ -160,8 +161,8 @@ snmp_get_auth_traps_enabled(void) * and .iso.org.dod.internet.private.enterprises.yourenterprise * (sysObjectID) for specific traps. */ -static err_t -snmp_send_trap(const struct snmp_obj_id *device_enterprise_oid, s32_t generic_trap, s32_t specific_trap, struct snmp_varbind *varbinds) +err_t +snmp_send_trap(const struct snmp_obj_id* eoid, s32_t generic_trap, s32_t specific_trap, struct snmp_varbind *varbinds) { struct snmp_msg_trap trap_msg; struct snmp_trap_dst *td; @@ -175,10 +176,10 @@ snmp_send_trap(const struct snmp_obj_id *device_enterprise_oid, s32_t generic_tr if ((td->enable != 0) && !ip_addr_isany(&td->dip)) { /* lookup current source address for this dst */ if (snmp_get_local_ip_for_dst(snmp_traps_handle, &td->dip, &trap_msg.sip)) { - if (device_enterprise_oid == NULL) { + if (eoid == NULL) { trap_msg.enterprise = snmp_get_device_enterprise_oid(); } else { - trap_msg.enterprise = device_enterprise_oid; + trap_msg.enterprise = eoid; } trap_msg.gen_trap = generic_trap; diff --git a/src/include/lwip/apps/snmp.h b/src/include/lwip/apps/snmp.h index 60ce9c92..10e8ff43 100644 --- a/src/include/lwip/apps/snmp.h +++ b/src/include/lwip/apps/snmp.h @@ -99,6 +99,7 @@ void snmp_trap_dst_ip_set(u8_t dst_idx, const ip_addr_t *dst); err_t snmp_send_trap_generic(s32_t generic_trap); err_t snmp_send_trap_specific(s32_t specific_trap, struct snmp_varbind *varbinds); +err_t snmp_send_trap(const struct snmp_obj_id* oid, s32_t generic_trap, s32_t specific_trap, struct snmp_varbind *varbinds); #define SNMP_AUTH_TRAPS_DISABLED 0 #define SNMP_AUTH_TRAPS_ENABLED 1