diff --git a/src/apps/snmp/snmp_core.c b/src/apps/snmp/snmp_core.c index 9125740c..045b2d05 100644 --- a/src/apps/snmp/snmp_core.c +++ b/src/apps/snmp/snmp_core.c @@ -198,11 +198,11 @@ const struct snmp_obj_id_const_ref snmp_zero_dot_zero = { LWIP_ARRAYSIZE(snmp_ze #include "lwip/apps/snmp_snmpv2_framework.h" #include "lwip/apps/snmp_snmpv2_usm.h" static const struct snmp_mib* const default_mibs[] = { &mib2, &snmpframeworkmib, &snmpusmmib }; -static u8_t snmp_num_mibs = 3; +static u8_t snmp_num_mibs = LWIP_ARRAYSIZE(default_mibs); #elif SNMP_LWIP_MIB2 #include "lwip/apps/snmp_mib2.h" static const struct snmp_mib* const default_mibs[] = { &mib2 }; -static u8_t snmp_num_mibs = 1; +static u8_t snmp_num_mibs = LWIP_ARRAYSIZE(default_mibs); #else static const struct snmp_mib* const default_mibs[] = { NULL }; static u8_t snmp_num_mibs = 0; diff --git a/src/apps/snmp/snmp_msg.c b/src/apps/snmp/snmp_msg.c index c44ea8ee..db0d3e13 100644 --- a/src/apps/snmp/snmp_msg.c +++ b/src/apps/snmp/snmp_msg.c @@ -48,8 +48,8 @@ #if LWIP_SNMP_V3 #include "lwip/apps/snmpv3.h" #include "snmpv3_priv.h" -#ifdef LWIP_SNMPV3_INCLUDE_ENGINE -#include LWIP_SNMPV3_INCLUDE_ENGINE +#ifdef LWIP_HOOK_FILENAME +#include LWIP_HOOK_FILENAME #endif #endif @@ -294,6 +294,7 @@ snmp_receive(void *handle, struct pbuf *p, const ip_addr_t *source_ip, u16_t por err = snmp_process_set_request(&request); } } +#if LWIP_SNMP_V3 else { struct snmp_varbind vb; @@ -356,10 +357,9 @@ snmp_receive(void *handle, struct pbuf *p, const ip_addr_t *source_ip, u16_t por } request.request_out_type = (SNMP_ASN1_CLASS_CONTEXT | SNMP_ASN1_CONTENTTYPE_CONSTRUCTED | SNMP_ASN1_CONTEXT_PDU_REPORT); -#if LWIP_SNMP_V3 request.request_id = request.msg_id; -#endif } +#endif if (err == ERR_OK) { err = snmp_complete_outbound_frame(&request); diff --git a/src/include/lwip/apps/snmp_core.h b/src/include/lwip/apps/snmp_core.h index ad03ef2f..ce5fdded 100644 --- a/src/include/lwip/apps/snmp_core.h +++ b/src/include/lwip/apps/snmp_core.h @@ -351,12 +351,14 @@ struct snmp_statistics u32_t outsetrequests; u32_t outgetresponses; u32_t outtraps; +#if LWIP_SNMP_V3 u32_t unsupportedseclevels; u32_t notintimewindows; u32_t unknownusernames; u32_t unknownengineids; u32_t wrongdigests; u32_t decryptionerrors; +#endif }; extern struct snmp_statistics snmp_stats;