net-snmp 5.7
Functions
stash_cache
Net-SNMP Agent handler and extensibility API

Automatically caches data for certain handlers. More...

Functions

netsnmp_mib_handlernetsnmp_get_timed_bare_stash_cache_handler (int timeout, oid *rootoid, size_t rootoid_len)
 returns a stash_cache handler that can be injected into a given handler chain (with the specified timeout and root OID values), but *only* if that handler chain explicitly supports stash cache processing.
netsnmp_mib_handlernetsnmp_get_bare_stash_cache_handler (void)
 returns a single stash_cache handler that can be injected into a given handler chain (with a fixed timeout), but *only* if that handler chain explicitly supports stash cache processing.
netsnmp_mib_handlernetsnmp_get_stash_cache_handler (void)
 returns a stash_cache handler sub-chain that can be injected into a given (arbitrary) handler chain, using a fixed cache timeout.
netsnmp_mib_handlernetsnmp_get_timed_stash_cache_handler (int timeout, oid *rootoid, size_t rootoid_len)
 returns a stash_cache handler sub-chain that can be injected into a given (arbitrary) handler chain, using a configurable cache timeout.
netsnmp_oid_stash_node ** netsnmp_extract_stash_cache (netsnmp_agent_request_info *reqinfo)
 extracts a pointer to the stash_cache info from the reqinfo structure.
int netsnmp_stash_cache_helper (netsnmp_mib_handler *handler, netsnmp_handler_registration *reginfo, netsnmp_agent_request_info *reqinfo, netsnmp_request_info *requests)
int _netsnmp_stash_cache_load (netsnmp_cache *cache, void *magic)
 updates a given cache depending on whether it needs to or not.
void _netsnmp_stash_cache_free (netsnmp_cache *cache, void *magic)
void netsnmp_init_stash_cache_helper (void)
 initializes the stash_cache helper which then registers a stash_cache handler as a run-time injectable handler for configuration file use.

Detailed Description

Automatically caches data for certain handlers.

This handler caches data in an optimized way which may aleviate the need for the lower level handlers to perform as much optimization. Specifically, somewhere in the lower level handlers must be a handler that supports the MODE_GET_STASH operation. Note that the table_iterator helper supports this.


Function Documentation

int _netsnmp_stash_cache_load ( netsnmp_cache cache,
void *  magic 
)

updates a given cache depending on whether it needs to or not.

Definition at line 200 of file stash_cache.c.

netsnmp_oid_stash_node** netsnmp_extract_stash_cache ( netsnmp_agent_request_info reqinfo)

extracts a pointer to the stash_cache info from the reqinfo structure.

Definition at line 119 of file stash_cache.c.

netsnmp_mib_handler* netsnmp_get_bare_stash_cache_handler ( void  )

returns a single stash_cache handler that can be injected into a given handler chain (with a fixed timeout), but *only* if that handler chain explicitly supports stash cache processing.

Definition at line 85 of file stash_cache.c.

netsnmp_mib_handler* netsnmp_get_stash_cache_handler ( void  )

returns a stash_cache handler sub-chain that can be injected into a given (arbitrary) handler chain, using a fixed cache timeout.

Definition at line 94 of file stash_cache.c.

netsnmp_mib_handler* netsnmp_get_timed_bare_stash_cache_handler ( int  timeout,
oid *  rootoid,
size_t  rootoid_len 
)

returns a stash_cache handler that can be injected into a given handler chain (with the specified timeout and root OID values), but *only* if that handler chain explicitly supports stash cache processing.

Definition at line 50 of file stash_cache.c.

netsnmp_mib_handler* netsnmp_get_timed_stash_cache_handler ( int  timeout,
oid *  rootoid,
size_t  rootoid_len 
)

returns a stash_cache handler sub-chain that can be injected into a given (arbitrary) handler chain, using a configurable cache timeout.

Definition at line 107 of file stash_cache.c.

void netsnmp_init_stash_cache_helper ( void  )

initializes the stash_cache helper which then registers a stash_cache handler as a run-time injectable handler for configuration file use.

Definition at line 243 of file stash_cache.c.