|
@@ -14,6 +14,9 @@
|
|
|
#include "trap_api.h"
|
|
|
#include "parameters.h"
|
|
|
#include "settings_api.h"
|
|
|
+
|
|
|
+#include "lwip/apps/snmp.h"
|
|
|
+
|
|
|
/*
|
|
|
#include "lwip/snmp.h"
|
|
|
#include "lwip/snmp_msg.h"
|
|
@@ -233,7 +236,7 @@ bool SNMP_SendVarbindTrap(TRAP_t *trap)
|
|
|
snmp_varbind_tail_add(&trap_msg.outvb, vb);
|
|
|
|
|
|
snmp_send_trap(SNMP_GENTRAP_ENTERPRISESPC, &trapObjId, 0);
|
|
|
-
|
|
|
+
|
|
|
snmp_varbind_list_free(&trap_msg.outvb);
|
|
|
|
|
|
return true;
|
|
@@ -242,6 +245,35 @@ bool SNMP_SendVarbindTrap(TRAP_t *trap)
|
|
|
return false;
|
|
|
}
|
|
|
*/
|
|
|
+
|
|
|
+// snmp_send_trap_specific(s32_t specific_trap, struct snmp_varbind *varbinds)
|
|
|
+
|
|
|
+// return snmp_send_trap(NULL, SNMP_GENTRAP_ENTERPRISE_SPECIFIC, specific_trap, varbinds);
|
|
|
+
|
|
|
+ s32_t vb_trap;
|
|
|
+ struct snmp_varbind vb;
|
|
|
+
|
|
|
+ char msg[255];
|
|
|
+ uint8_t len = 0;
|
|
|
+ //struct snmp_varbind *vb;
|
|
|
+ struct snmp_obj_id trapObjId = {11, {1, 3, 6, 1, 4, 1, 41752, 911, 3, 2, 1}};
|
|
|
+ struct snmp_obj_id varObjId = {11, {1, 3, 6, 1, 4, 1, 41752, 911, 3, 1, 1}};
|
|
|
+
|
|
|
+ trapObjId.id[trapObjId.len - 1] = trap->trapId;
|
|
|
+ varObjId.id[varObjId.len - 1] = trap->varbindId;
|
|
|
+
|
|
|
+ trap->handle(msg, &len);
|
|
|
+
|
|
|
+ vb.oid = varObjId;
|
|
|
+ vb.type = SNMP_ASN1_TYPE_OCTET_STRING;
|
|
|
+ vb.value = msg;
|
|
|
+ vb.value_len = len;
|
|
|
+ vb.next = NULL;
|
|
|
+ vb.prev = NULL;
|
|
|
+ //memcpy(vb.value, msg, len);
|
|
|
+
|
|
|
+
|
|
|
+ snmp_send_trap_specific(0, &vb);
|
|
|
}
|
|
|
|
|
|
|