mirror of
https://git.savannah.nongnu.org/git/lwip.git
synced 2026-05-15 12:47:08 +08:00
enable to remove SNMP timer (which consumne several cycles even when it's not necessary). snmp_agent.txt tell to call snmp_inc_sysuptime() each 10ms (but, it's intrusive if you use sys_timeout feature). Now, you can decide to call snmp_add_sysuptime(100) each 1000ms (which is bigger "step", but call to a lower frequency). Or, you can decide to not call snmp_inc_sysuptime() or snmp_add_sysuptime(), and to define the SNMP_GET_SYSUPTIME(sysuptime) macro. This one is undefined by default in mib2.c. SNMP_GET_SYSUPTIME is called inside snmp_get_sysuptime(u32_t *value), and enable to change "sysuptime" value only when it's queried (any direct call to "sysuptime" is changed by a call to snmp_get_sysuptime).
This commit is contained in:
@@ -81,8 +81,12 @@ enum snmp_ifType {
|
||||
|
||||
#if LWIP_SNMP /* don't build if not configured for use in lwipopts.h */
|
||||
|
||||
/** SNMP "sysuptime" Interval */
|
||||
#define SNMP_SYSUPTIME_INTERVAL 10
|
||||
|
||||
/** fixed maximum length for object identifier type */
|
||||
#define LWIP_SNMP_OBJ_ID_LEN 32
|
||||
|
||||
/** internal object identifier representation */
|
||||
struct snmp_obj_id
|
||||
{
|
||||
@@ -95,6 +99,7 @@ void snmp_set_sysdesr(u8_t* str, u8_t* len);
|
||||
void snmp_set_sysobjid(struct snmp_obj_id *oid);
|
||||
void snmp_get_sysobjid_ptr(struct snmp_obj_id **oid);
|
||||
void snmp_inc_sysuptime(void);
|
||||
void snmp_add_sysuptime(u32_t value);
|
||||
void snmp_get_sysuptime(u32_t *value);
|
||||
void snmp_set_syscontact(u8_t *ocstr, u8_t *ocstrlen);
|
||||
void snmp_set_sysname(u8_t *ocstr, u8_t *ocstrlen);
|
||||
@@ -227,6 +232,7 @@ void snmp_get_snmpenableauthentraps(u8_t *value);
|
||||
#define snmp_set_sysobjid(oid);
|
||||
#define snmp_get_sysobjid_ptr(oid)
|
||||
#define snmp_inc_sysuptime()
|
||||
#define snmp_add_sysuptime(value)
|
||||
#define snmp_get_sysuptime(value)
|
||||
#define snmp_set_syscontact(ocstr, ocstrlen);
|
||||
#define snmp_set_sysname(ocstr, ocstrlen);
|
||||
|
||||
Reference in New Issue
Block a user