1*5d5fbe79SDavid van Moolenbroek /** 2*5d5fbe79SDavid van Moolenbroek * @file 3*5d5fbe79SDavid van Moolenbroek * SNMP server options list 4*5d5fbe79SDavid van Moolenbroek */ 5*5d5fbe79SDavid van Moolenbroek 6*5d5fbe79SDavid van Moolenbroek /* 7*5d5fbe79SDavid van Moolenbroek * Copyright (c) 2015 Dirk Ziegelmeier 8*5d5fbe79SDavid van Moolenbroek * All rights reserved. 9*5d5fbe79SDavid van Moolenbroek * 10*5d5fbe79SDavid van Moolenbroek * Redistribution and use in source and binary forms, with or without modification, 11*5d5fbe79SDavid van Moolenbroek * are permitted provided that the following conditions are met: 12*5d5fbe79SDavid van Moolenbroek * 13*5d5fbe79SDavid van Moolenbroek * 1. Redistributions of source code must retain the above copyright notice, 14*5d5fbe79SDavid van Moolenbroek * this list of conditions and the following disclaimer. 15*5d5fbe79SDavid van Moolenbroek * 2. Redistributions in binary form must reproduce the above copyright notice, 16*5d5fbe79SDavid van Moolenbroek * this list of conditions and the following disclaimer in the documentation 17*5d5fbe79SDavid van Moolenbroek * and/or other materials provided with the distribution. 18*5d5fbe79SDavid van Moolenbroek * 3. The name of the author may not be used to endorse or promote products 19*5d5fbe79SDavid van Moolenbroek * derived from this software without specific prior written permission. 20*5d5fbe79SDavid van Moolenbroek * 21*5d5fbe79SDavid van Moolenbroek * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED 22*5d5fbe79SDavid van Moolenbroek * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 23*5d5fbe79SDavid van Moolenbroek * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT 24*5d5fbe79SDavid van Moolenbroek * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 25*5d5fbe79SDavid van Moolenbroek * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT 26*5d5fbe79SDavid van Moolenbroek * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 27*5d5fbe79SDavid van Moolenbroek * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 28*5d5fbe79SDavid van Moolenbroek * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING 29*5d5fbe79SDavid van Moolenbroek * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY 30*5d5fbe79SDavid van Moolenbroek * OF SUCH DAMAGE. 31*5d5fbe79SDavid van Moolenbroek * 32*5d5fbe79SDavid van Moolenbroek * This file is part of the lwIP TCP/IP stack. 33*5d5fbe79SDavid van Moolenbroek * 34*5d5fbe79SDavid van Moolenbroek * Author: Dirk Ziegelmeier 35*5d5fbe79SDavid van Moolenbroek * 36*5d5fbe79SDavid van Moolenbroek */ 37*5d5fbe79SDavid van Moolenbroek #ifndef LWIP_HDR_SNMP_OPTS_H 38*5d5fbe79SDavid van Moolenbroek #define LWIP_HDR_SNMP_OPTS_H 39*5d5fbe79SDavid van Moolenbroek 40*5d5fbe79SDavid van Moolenbroek #include "lwip/opt.h" 41*5d5fbe79SDavid van Moolenbroek 42*5d5fbe79SDavid van Moolenbroek /** 43*5d5fbe79SDavid van Moolenbroek * @defgroup snmp_opts Options 44*5d5fbe79SDavid van Moolenbroek * @ingroup snmp 45*5d5fbe79SDavid van Moolenbroek * @{ 46*5d5fbe79SDavid van Moolenbroek */ 47*5d5fbe79SDavid van Moolenbroek 48*5d5fbe79SDavid van Moolenbroek /** 49*5d5fbe79SDavid van Moolenbroek * LWIP_SNMP==1: This enables the lwIP SNMP agent. UDP must be available 50*5d5fbe79SDavid van Moolenbroek * for SNMP transport. 51*5d5fbe79SDavid van Moolenbroek * If you want to use your own SNMP agent, leave this disabled. 52*5d5fbe79SDavid van Moolenbroek * To integrate MIB2 of an external agent, you need to enable 53*5d5fbe79SDavid van Moolenbroek * LWIP_MIB2_CALLBACKS and MIB2_STATS. This will give you the callbacks 54*5d5fbe79SDavid van Moolenbroek * and statistics counters you need to get MIB2 working. 55*5d5fbe79SDavid van Moolenbroek */ 56*5d5fbe79SDavid van Moolenbroek #if !defined LWIP_SNMP || defined __DOXYGEN__ 57*5d5fbe79SDavid van Moolenbroek #define LWIP_SNMP 0 58*5d5fbe79SDavid van Moolenbroek #endif 59*5d5fbe79SDavid van Moolenbroek 60*5d5fbe79SDavid van Moolenbroek /** 61*5d5fbe79SDavid van Moolenbroek * SNMP_USE_NETCONN: Use netconn API instead of raw API. 62*5d5fbe79SDavid van Moolenbroek * Makes SNMP agent run in a worker thread, so blocking operations 63*5d5fbe79SDavid van Moolenbroek * can be done in MIB calls. 64*5d5fbe79SDavid van Moolenbroek */ 65*5d5fbe79SDavid van Moolenbroek #if !defined SNMP_USE_NETCONN || defined __DOXYGEN__ 66*5d5fbe79SDavid van Moolenbroek #define SNMP_USE_NETCONN 0 67*5d5fbe79SDavid van Moolenbroek #endif 68*5d5fbe79SDavid van Moolenbroek 69*5d5fbe79SDavid van Moolenbroek /** 70*5d5fbe79SDavid van Moolenbroek * SNMP_USE_RAW: Use raw API. 71*5d5fbe79SDavid van Moolenbroek * SNMP agent does not run in a worker thread, so blocking operations 72*5d5fbe79SDavid van Moolenbroek * should not be done in MIB calls. 73*5d5fbe79SDavid van Moolenbroek */ 74*5d5fbe79SDavid van Moolenbroek #if !defined SNMP_USE_RAW || defined __DOXYGEN__ 75*5d5fbe79SDavid van Moolenbroek #define SNMP_USE_RAW 1 76*5d5fbe79SDavid van Moolenbroek #endif 77*5d5fbe79SDavid van Moolenbroek 78*5d5fbe79SDavid van Moolenbroek #if SNMP_USE_NETCONN && SNMP_USE_RAW 79*5d5fbe79SDavid van Moolenbroek #error SNMP stack can use only one of the APIs {raw, netconn} 80*5d5fbe79SDavid van Moolenbroek #endif 81*5d5fbe79SDavid van Moolenbroek 82*5d5fbe79SDavid van Moolenbroek #if LWIP_SNMP && !SNMP_USE_NETCONN && !SNMP_USE_RAW 83*5d5fbe79SDavid van Moolenbroek #error SNMP stack needs a receive API and UDP {raw, netconn} 84*5d5fbe79SDavid van Moolenbroek #endif 85*5d5fbe79SDavid van Moolenbroek 86*5d5fbe79SDavid van Moolenbroek #if SNMP_USE_NETCONN 87*5d5fbe79SDavid van Moolenbroek /** 88*5d5fbe79SDavid van Moolenbroek * SNMP_STACK_SIZE: Stack size of SNMP netconn worker thread 89*5d5fbe79SDavid van Moolenbroek */ 90*5d5fbe79SDavid van Moolenbroek #if !defined SNMP_STACK_SIZE || defined __DOXYGEN__ 91*5d5fbe79SDavid van Moolenbroek #define SNMP_STACK_SIZE DEFAULT_THREAD_STACKSIZE 92*5d5fbe79SDavid van Moolenbroek #endif 93*5d5fbe79SDavid van Moolenbroek 94*5d5fbe79SDavid van Moolenbroek /** 95*5d5fbe79SDavid van Moolenbroek * SNMP_THREAD_PRIO: SNMP netconn worker thread priority 96*5d5fbe79SDavid van Moolenbroek */ 97*5d5fbe79SDavid van Moolenbroek #if !defined SNMP_THREAD_PRIO || defined __DOXYGEN__ 98*5d5fbe79SDavid van Moolenbroek #define SNMP_THREAD_PRIO DEFAULT_THREAD_PRIO 99*5d5fbe79SDavid van Moolenbroek #endif 100*5d5fbe79SDavid van Moolenbroek #endif /* SNMP_USE_NETCONN */ 101*5d5fbe79SDavid van Moolenbroek 102*5d5fbe79SDavid van Moolenbroek /** 103*5d5fbe79SDavid van Moolenbroek * SNMP_TRAP_DESTINATIONS: Number of trap destinations. At least one trap 104*5d5fbe79SDavid van Moolenbroek * destination is required 105*5d5fbe79SDavid van Moolenbroek */ 106*5d5fbe79SDavid van Moolenbroek #if !defined SNMP_TRAP_DESTINATIONS || defined __DOXYGEN__ 107*5d5fbe79SDavid van Moolenbroek #define SNMP_TRAP_DESTINATIONS 1 108*5d5fbe79SDavid van Moolenbroek #endif 109*5d5fbe79SDavid van Moolenbroek 110*5d5fbe79SDavid van Moolenbroek /** 111*5d5fbe79SDavid van Moolenbroek * Only allow SNMP write actions that are 'safe' (e.g. disabling netifs is not 112*5d5fbe79SDavid van Moolenbroek * a safe action and disabled when SNMP_SAFE_REQUESTS = 1). 113*5d5fbe79SDavid van Moolenbroek * Unsafe requests are disabled by default! 114*5d5fbe79SDavid van Moolenbroek */ 115*5d5fbe79SDavid van Moolenbroek #if !defined SNMP_SAFE_REQUESTS || defined __DOXYGEN__ 116*5d5fbe79SDavid van Moolenbroek #define SNMP_SAFE_REQUESTS 1 117*5d5fbe79SDavid van Moolenbroek #endif 118*5d5fbe79SDavid van Moolenbroek 119*5d5fbe79SDavid van Moolenbroek /** 120*5d5fbe79SDavid van Moolenbroek * The maximum length of strings used. 121*5d5fbe79SDavid van Moolenbroek */ 122*5d5fbe79SDavid van Moolenbroek #if !defined SNMP_MAX_OCTET_STRING_LEN || defined __DOXYGEN__ 123*5d5fbe79SDavid van Moolenbroek #define SNMP_MAX_OCTET_STRING_LEN 127 124*5d5fbe79SDavid van Moolenbroek #endif 125*5d5fbe79SDavid van Moolenbroek 126*5d5fbe79SDavid van Moolenbroek /** 127*5d5fbe79SDavid van Moolenbroek * The maximum number of Sub ID's inside an object identifier. 128*5d5fbe79SDavid van Moolenbroek * Indirectly this also limits the maximum depth of SNMP tree. 129*5d5fbe79SDavid van Moolenbroek */ 130*5d5fbe79SDavid van Moolenbroek #if !defined SNMP_MAX_OBJ_ID_LEN || defined __DOXYGEN__ 131*5d5fbe79SDavid van Moolenbroek #define SNMP_MAX_OBJ_ID_LEN 50 132*5d5fbe79SDavid van Moolenbroek #endif 133*5d5fbe79SDavid van Moolenbroek 134*5d5fbe79SDavid van Moolenbroek #if !defined SNMP_MAX_VALUE_SIZE || defined __DOXYGEN__ 135*5d5fbe79SDavid van Moolenbroek /** 136*5d5fbe79SDavid van Moolenbroek * The maximum size of a value. 137*5d5fbe79SDavid van Moolenbroek */ 138*5d5fbe79SDavid van Moolenbroek #define SNMP_MIN_VALUE_SIZE (2 * sizeof(u32_t*)) /* size required to store the basic types (8 bytes for counter64) */ 139*5d5fbe79SDavid van Moolenbroek /** 140*5d5fbe79SDavid van Moolenbroek * The minimum size of a value. 141*5d5fbe79SDavid van Moolenbroek */ 142*5d5fbe79SDavid van Moolenbroek #define SNMP_MAX_VALUE_SIZE LWIP_MAX(LWIP_MAX((SNMP_MAX_OCTET_STRING_LEN), sizeof(u32_t)*(SNMP_MAX_OBJ_ID_LEN)), SNMP_MIN_VALUE_SIZE) 143*5d5fbe79SDavid van Moolenbroek #endif 144*5d5fbe79SDavid van Moolenbroek 145*5d5fbe79SDavid van Moolenbroek /** 146*5d5fbe79SDavid van Moolenbroek * The snmp read-access community. Used for write-access and traps, too 147*5d5fbe79SDavid van Moolenbroek * unless SNMP_COMMUNITY_WRITE or SNMP_COMMUNITY_TRAP are enabled, respectively. 148*5d5fbe79SDavid van Moolenbroek */ 149*5d5fbe79SDavid van Moolenbroek #if !defined SNMP_COMMUNITY || defined __DOXYGEN__ 150*5d5fbe79SDavid van Moolenbroek #define SNMP_COMMUNITY "public" 151*5d5fbe79SDavid van Moolenbroek #endif 152*5d5fbe79SDavid van Moolenbroek 153*5d5fbe79SDavid van Moolenbroek /** 154*5d5fbe79SDavid van Moolenbroek * The snmp write-access community. 155*5d5fbe79SDavid van Moolenbroek * Set this community to "" in order to disallow any write access. 156*5d5fbe79SDavid van Moolenbroek */ 157*5d5fbe79SDavid van Moolenbroek #if !defined SNMP_COMMUNITY_WRITE || defined __DOXYGEN__ 158*5d5fbe79SDavid van Moolenbroek #define SNMP_COMMUNITY_WRITE "private" 159*5d5fbe79SDavid van Moolenbroek #endif 160*5d5fbe79SDavid van Moolenbroek 161*5d5fbe79SDavid van Moolenbroek /** 162*5d5fbe79SDavid van Moolenbroek * The snmp community used for sending traps. 163*5d5fbe79SDavid van Moolenbroek */ 164*5d5fbe79SDavid van Moolenbroek #if !defined SNMP_COMMUNITY_TRAP || defined __DOXYGEN__ 165*5d5fbe79SDavid van Moolenbroek #define SNMP_COMMUNITY_TRAP "public" 166*5d5fbe79SDavid van Moolenbroek #endif 167*5d5fbe79SDavid van Moolenbroek 168*5d5fbe79SDavid van Moolenbroek /** 169*5d5fbe79SDavid van Moolenbroek * The maximum length of community string. 170*5d5fbe79SDavid van Moolenbroek * If community names shall be adjusted at runtime via snmp_set_community() calls, 171*5d5fbe79SDavid van Moolenbroek * enter here the possible maximum length (+1 for terminating null character). 172*5d5fbe79SDavid van Moolenbroek */ 173*5d5fbe79SDavid van Moolenbroek #if !defined SNMP_MAX_COMMUNITY_STR_LEN || defined __DOXYGEN__ 174*5d5fbe79SDavid van Moolenbroek #define SNMP_MAX_COMMUNITY_STR_LEN LWIP_MAX(LWIP_MAX(sizeof(SNMP_COMMUNITY), sizeof(SNMP_COMMUNITY_WRITE)), sizeof(SNMP_COMMUNITY_TRAP)) 175*5d5fbe79SDavid van Moolenbroek #endif 176*5d5fbe79SDavid van Moolenbroek 177*5d5fbe79SDavid van Moolenbroek /** 178*5d5fbe79SDavid van Moolenbroek * The OID identifiying the device. This may be the enterprise OID itself or any OID located below it in tree. 179*5d5fbe79SDavid van Moolenbroek */ 180*5d5fbe79SDavid van Moolenbroek #if !defined SNMP_DEVICE_ENTERPRISE_OID || defined __DOXYGEN__ 181*5d5fbe79SDavid van Moolenbroek #define SNMP_LWIP_ENTERPRISE_OID 26381 182*5d5fbe79SDavid van Moolenbroek /** 183*5d5fbe79SDavid van Moolenbroek * IANA assigned enterprise ID for lwIP is 26381 184*5d5fbe79SDavid van Moolenbroek * @see http://www.iana.org/assignments/enterprise-numbers 185*5d5fbe79SDavid van Moolenbroek * 186*5d5fbe79SDavid van Moolenbroek * @note this enterprise ID is assigned to the lwIP project, 187*5d5fbe79SDavid van Moolenbroek * all object identifiers living under this ID are assigned 188*5d5fbe79SDavid van Moolenbroek * by the lwIP maintainers! 189*5d5fbe79SDavid van Moolenbroek * @note don't change this define, use snmp_set_device_enterprise_oid() 190*5d5fbe79SDavid van Moolenbroek * 191*5d5fbe79SDavid van Moolenbroek * If you need to create your own private MIB you'll need 192*5d5fbe79SDavid van Moolenbroek * to apply for your own enterprise ID with IANA: 193*5d5fbe79SDavid van Moolenbroek * http://www.iana.org/numbers.html 194*5d5fbe79SDavid van Moolenbroek */ 195*5d5fbe79SDavid van Moolenbroek #define SNMP_DEVICE_ENTERPRISE_OID {1, 3, 6, 1, 4, 1, SNMP_LWIP_ENTERPRISE_OID} 196*5d5fbe79SDavid van Moolenbroek /** 197*5d5fbe79SDavid van Moolenbroek * Length of SNMP_DEVICE_ENTERPRISE_OID 198*5d5fbe79SDavid van Moolenbroek */ 199*5d5fbe79SDavid van Moolenbroek #define SNMP_DEVICE_ENTERPRISE_OID_LEN 7 200*5d5fbe79SDavid van Moolenbroek #endif 201*5d5fbe79SDavid van Moolenbroek 202*5d5fbe79SDavid van Moolenbroek /** 203*5d5fbe79SDavid van Moolenbroek * SNMP_DEBUG: Enable debugging for SNMP messages. 204*5d5fbe79SDavid van Moolenbroek */ 205*5d5fbe79SDavid van Moolenbroek #if !defined SNMP_DEBUG || defined __DOXYGEN__ 206*5d5fbe79SDavid van Moolenbroek #define SNMP_DEBUG LWIP_DBG_OFF 207*5d5fbe79SDavid van Moolenbroek #endif 208*5d5fbe79SDavid van Moolenbroek 209*5d5fbe79SDavid van Moolenbroek /** 210*5d5fbe79SDavid van Moolenbroek * SNMP_MIB_DEBUG: Enable debugging for SNMP MIBs. 211*5d5fbe79SDavid van Moolenbroek */ 212*5d5fbe79SDavid van Moolenbroek #if !defined SNMP_MIB_DEBUG || defined __DOXYGEN__ 213*5d5fbe79SDavid van Moolenbroek #define SNMP_MIB_DEBUG LWIP_DBG_OFF 214*5d5fbe79SDavid van Moolenbroek #endif 215*5d5fbe79SDavid van Moolenbroek 216*5d5fbe79SDavid van Moolenbroek /** 217*5d5fbe79SDavid van Moolenbroek * Indicates if the MIB2 implementation of LWIP SNMP stack is used. 218*5d5fbe79SDavid van Moolenbroek */ 219*5d5fbe79SDavid van Moolenbroek #if !defined SNMP_LWIP_MIB2 || defined __DOXYGEN__ 220*5d5fbe79SDavid van Moolenbroek #define SNMP_LWIP_MIB2 LWIP_SNMP 221*5d5fbe79SDavid van Moolenbroek #endif 222*5d5fbe79SDavid van Moolenbroek 223*5d5fbe79SDavid van Moolenbroek /** 224*5d5fbe79SDavid van Moolenbroek * Value return for sysDesc field of MIB2. 225*5d5fbe79SDavid van Moolenbroek */ 226*5d5fbe79SDavid van Moolenbroek #if !defined SNMP_LWIP_MIB2_SYSDESC || defined __DOXYGEN__ 227*5d5fbe79SDavid van Moolenbroek #define SNMP_LWIP_MIB2_SYSDESC "lwIP" 228*5d5fbe79SDavid van Moolenbroek #endif 229*5d5fbe79SDavid van Moolenbroek 230*5d5fbe79SDavid van Moolenbroek /** 231*5d5fbe79SDavid van Moolenbroek * Value return for sysName field of MIB2. 232*5d5fbe79SDavid van Moolenbroek * To make sysName field settable, call snmp_mib2_set_sysname() to provide the necessary buffers. 233*5d5fbe79SDavid van Moolenbroek */ 234*5d5fbe79SDavid van Moolenbroek #if !defined SNMP_LWIP_MIB2_SYSNAME || defined __DOXYGEN__ 235*5d5fbe79SDavid van Moolenbroek #define SNMP_LWIP_MIB2_SYSNAME "FQDN-unk" 236*5d5fbe79SDavid van Moolenbroek #endif 237*5d5fbe79SDavid van Moolenbroek 238*5d5fbe79SDavid van Moolenbroek /** 239*5d5fbe79SDavid van Moolenbroek * Value return for sysContact field of MIB2. 240*5d5fbe79SDavid van Moolenbroek * To make sysContact field settable, call snmp_mib2_set_syscontact() to provide the necessary buffers. 241*5d5fbe79SDavid van Moolenbroek */ 242*5d5fbe79SDavid van Moolenbroek #if !defined SNMP_LWIP_MIB2_SYSCONTACT || defined __DOXYGEN__ 243*5d5fbe79SDavid van Moolenbroek #define SNMP_LWIP_MIB2_SYSCONTACT "" 244*5d5fbe79SDavid van Moolenbroek #endif 245*5d5fbe79SDavid van Moolenbroek 246*5d5fbe79SDavid van Moolenbroek /** 247*5d5fbe79SDavid van Moolenbroek * Value return for sysLocation field of MIB2. 248*5d5fbe79SDavid van Moolenbroek * To make sysLocation field settable, call snmp_mib2_set_syslocation() to provide the necessary buffers. 249*5d5fbe79SDavid van Moolenbroek */ 250*5d5fbe79SDavid van Moolenbroek #if !defined SNMP_LWIP_MIB2_SYSLOCATION || defined __DOXYGEN__ 251*5d5fbe79SDavid van Moolenbroek #define SNMP_LWIP_MIB2_SYSLOCATION "" 252*5d5fbe79SDavid van Moolenbroek #endif 253*5d5fbe79SDavid van Moolenbroek 254*5d5fbe79SDavid van Moolenbroek /** 255*5d5fbe79SDavid van Moolenbroek * This value is used to limit the repetitions processed in GetBulk requests (value == 0 means no limitation). 256*5d5fbe79SDavid van Moolenbroek * This may be useful to limit the load for a single request. 257*5d5fbe79SDavid van Moolenbroek * According to SNMP RFC 1905 it is allowed to not return all requested variables from a GetBulk request if system load would be too high. 258*5d5fbe79SDavid van Moolenbroek * so the effect is that the client will do more requests to gather all data. 259*5d5fbe79SDavid van Moolenbroek * For the stack this could be useful in case that SNMP processing is done in TCP/IP thread. In this situation a request with many 260*5d5fbe79SDavid van Moolenbroek * repetitions could block the thread for a longer time. Setting limit here will keep the stack more responsive. 261*5d5fbe79SDavid van Moolenbroek */ 262*5d5fbe79SDavid van Moolenbroek #if !defined SNMP_LWIP_GETBULK_MAX_REPETITIONS || defined __DOXYGEN__ 263*5d5fbe79SDavid van Moolenbroek #define SNMP_LWIP_GETBULK_MAX_REPETITIONS 0 264*5d5fbe79SDavid van Moolenbroek #endif 265*5d5fbe79SDavid van Moolenbroek 266*5d5fbe79SDavid van Moolenbroek /** 267*5d5fbe79SDavid van Moolenbroek * @} 268*5d5fbe79SDavid van Moolenbroek */ 269*5d5fbe79SDavid van Moolenbroek 270*5d5fbe79SDavid van Moolenbroek /* 271*5d5fbe79SDavid van Moolenbroek ------------------------------------ 272*5d5fbe79SDavid van Moolenbroek ---------- SNMPv3 options ---------- 273*5d5fbe79SDavid van Moolenbroek ------------------------------------ 274*5d5fbe79SDavid van Moolenbroek */ 275*5d5fbe79SDavid van Moolenbroek 276*5d5fbe79SDavid van Moolenbroek /** 277*5d5fbe79SDavid van Moolenbroek * LWIP_SNMP_V3==1: This enables EXPERIMENTAL SNMPv3 support. LWIP_SNMP must 278*5d5fbe79SDavid van Moolenbroek * also be enabled. 279*5d5fbe79SDavid van Moolenbroek * THIS IS UNDER DEVELOPMENT AND SHOULD NOT BE ENABLED IN PRODUCTS. 280*5d5fbe79SDavid van Moolenbroek */ 281*5d5fbe79SDavid van Moolenbroek #ifndef LWIP_SNMP_V3 282*5d5fbe79SDavid van Moolenbroek #define LWIP_SNMP_V3 0 283*5d5fbe79SDavid van Moolenbroek #endif 284*5d5fbe79SDavid van Moolenbroek 285*5d5fbe79SDavid van Moolenbroek #ifndef LWIP_SNMP_V3_MBEDTLS 286*5d5fbe79SDavid van Moolenbroek #define LWIP_SNMP_V3_MBEDTLS LWIP_SNMP_V3 287*5d5fbe79SDavid van Moolenbroek #endif 288*5d5fbe79SDavid van Moolenbroek 289*5d5fbe79SDavid van Moolenbroek #ifndef LWIP_SNMP_V3_CRYPTO 290*5d5fbe79SDavid van Moolenbroek #define LWIP_SNMP_V3_CRYPTO LWIP_SNMP_V3_MBEDTLS 291*5d5fbe79SDavid van Moolenbroek #endif 292*5d5fbe79SDavid van Moolenbroek 293*5d5fbe79SDavid van Moolenbroek #ifndef LWIP_SNMP_CONFIGURE_VERSIONS 294*5d5fbe79SDavid van Moolenbroek #define LWIP_SNMP_CONFIGURE_VERSIONS 0 295*5d5fbe79SDavid van Moolenbroek #endif 296*5d5fbe79SDavid van Moolenbroek 297*5d5fbe79SDavid van Moolenbroek #endif /* LWIP_HDR_SNMP_OPTS_H */ 298