mirror of
https://git.savannah.nongnu.org/git/lwip.git
synced 2026-05-21 07:36:55 +08:00
Use memp pools for snmp instead of the heap; added 4 new pools.
This commit is contained in:
@@ -68,6 +68,12 @@ LWIP_MEMPOOL(IGMP_GROUP, MEMP_NUM_IGMP_GROUP, sizeof(struct igmp_group)
|
||||
|
||||
LWIP_MEMPOOL(SYS_TIMEOUT, MEMP_NUM_SYS_TIMEOUT, sizeof(struct sys_timeo), "SYS_TIMEOUT")
|
||||
|
||||
#if LWIP_SNMP
|
||||
LWIP_MEMPOOL(SNMP_ROOTNODE, MEMP_NUM_SNMP_ROOTNODE, sizeof(struct mib_list_rootnode), "SNMP_ROOTNODE")
|
||||
LWIP_MEMPOOL(SNMP_NODE, MEMP_NUM_SNMP_NODE, sizeof(struct mib_list_node), "SNMP_NODE")
|
||||
LWIP_MEMPOOL(SNMP_VARBIND, MEMP_NUM_SNMP_VARBIND, sizeof(struct snmp_varbind), "SNMP_VARBIND")
|
||||
LWIP_MEMPOOL(SNMP_VALUE, MEMP_NUM_SNMP_VALUE, SNMP_MAX_VALUE_SIZE, "SNMP_VALUE")
|
||||
#endif /* LWIP_SNMP */
|
||||
|
||||
/*
|
||||
* A list of pools of pbuf's used by LWIP.
|
||||
|
||||
@@ -329,6 +329,39 @@
|
||||
#define MEMP_NUM_TCPIP_MSG_INPKT 8
|
||||
#endif
|
||||
|
||||
/**
|
||||
* MEMP_NUM_SNMP_NODE: the number of leafs in the SNMP tree.
|
||||
*/
|
||||
#ifndef MEMP_NUM_SNMP_NODE
|
||||
#define MEMP_NUM_SNMP_NODE 50
|
||||
#endif
|
||||
|
||||
/**
|
||||
* MEMP_NUM_SNMP_ROOTNODE: the number of branches in the SNMP tree.
|
||||
* Every branch has one leaf (MEMP_NUM_SNMP_NODE) at least!
|
||||
*/
|
||||
#ifndef MEMP_NUM_SNMP_ROOTNODE
|
||||
#define MEMP_NUM_SNMP_ROOTNODE 30
|
||||
#endif
|
||||
|
||||
/**
|
||||
* MEMP_NUM_SNMP_VARBIND: the number of concurrent requests (does not have to
|
||||
* be changed normally) - 2 of these are used per request (1 for input,
|
||||
* 1 for output)
|
||||
*/
|
||||
#ifndef MEMP_NUM_SNMP_VARBIND
|
||||
#define MEMP_NUM_SNMP_VARBIND 2
|
||||
#endif
|
||||
|
||||
/**
|
||||
* MEMP_NUM_SNMP_VALUE: the number of OID or values concurrently used
|
||||
* (does not have to be changed normally) - 3 of these are used per request
|
||||
* (1 for the value read and 2 for OIDs - input and output)
|
||||
*/
|
||||
#ifndef MEMP_NUM_SNMP_VALUE
|
||||
#define MEMP_NUM_SNMP_VALUE 3
|
||||
#endif
|
||||
|
||||
/**
|
||||
* PBUF_POOL_SIZE: the number of buffers in the pbuf pool.
|
||||
*/
|
||||
@@ -611,7 +644,8 @@
|
||||
|
||||
/**
|
||||
* SNMP_CONCURRENT_REQUESTS: Number of concurrent requests the module will
|
||||
* allow. At least one request buffer is required.
|
||||
* allow. At least one request buffer is required.
|
||||
* Does not have to be changed unless external MIBs answer request asynchronously
|
||||
*/
|
||||
#ifndef SNMP_CONCURRENT_REQUESTS
|
||||
#define SNMP_CONCURRENT_REQUESTS 1
|
||||
@@ -643,6 +677,31 @@
|
||||
#define SNMP_SAFE_REQUESTS 1
|
||||
#endif
|
||||
|
||||
/**
|
||||
* The maximum length of strings used. This affects the size of
|
||||
* MEMP_SNMP_VALUE elements.
|
||||
*/
|
||||
#ifndef SNMP_MAX_OCTET_STRING_LEN
|
||||
#define SNMP_MAX_OCTET_STRING_LEN 127
|
||||
#endif
|
||||
|
||||
/**
|
||||
* The maximum depth of the SNMP tree.
|
||||
* With private MIBs enabled, this depends on your MIB!
|
||||
* This affects the size of MEMP_SNMP_VALUE elements.
|
||||
*/
|
||||
#ifndef SNMP_MAX_TREE_DEPTH
|
||||
#define SNMP_MAX_TREE_DEPTH 15
|
||||
#endif
|
||||
|
||||
/**
|
||||
* The size of the MEMP_SNMP_VALUE elements, normally calculated from
|
||||
* SNMP_MAX_OCTET_STRING_LEN and SNMP_MAX_TREE_DEPTH.
|
||||
*/
|
||||
#ifndef SNMP_MAX_VALUE_SIZE
|
||||
#define SNMP_MAX_VALUE_SIZE LWIP_MAX((SNMP_MAX_OCTET_STRING_LEN)+1, sizeof(s32_t)*(SNMP_MAX_TREE_DEPTH))
|
||||
#endif
|
||||
|
||||
/*
|
||||
----------------------------------
|
||||
---------- IGMP options ----------
|
||||
|
||||
Reference in New Issue
Block a user