old_api(3)

NAME
old_api - Calls mib module code written in the old style of code.

  Functions

netsnmp_mib_handler * get_old_api_handler (void)
returns a old_api handler that should be the final calling handler.
int netsnmp_register_old_api (const char *moduleName, struct variable *var, size_t varsize, size_t numvars, oid *mibloc, size_t mibloclen, int priority, int range_subid, oid range_ubound, netsnmp_session *ss, const char *context, int timeout, int flags)
Registers an old API set into the mib tree.
int netsnmp_register_mib_table_row (const char *moduleName, struct variable *var, size_t varsize, size_t numvars, oid *mibloc, size_t mibloclen, int priority, int var_subid, netsnmp_session *ss, const char *context, int timeout, int flags)
registers a row within a mib table
int netsnmp_old_api_helper (netsnmp_mib_handler *handler, netsnmp_handler_registration *reginfo, netsnmp_agent_request_info *reqinfo, netsnmp_request_info *requests)
implements the old_api handler

Detailed Description

Calls mib module code written in the old style of code.

This is a backwards compatilibity module that allows code written in the old API to be run under the new handler based architecture. Use it by calling netsnmp_register_old_api().

Function Documentation

  netsnmp_mib_handler* get_old_api_handler (void)

returns a old_api handler that should be the final calling handler.

Don't use this function. Use the netsnmp_register_old_api() function instead.

Definition at line 37 of file old_api.c.

References netsnmp_create_handler(), and netsnmp_old_api_helper().

Referenced by netsnmp_register_mib_table_row(), and netsnmp_register_old_api().

  int netsnmp_old_api_helper (netsnmp_mib_handler * handler, netsnmp_handler_registration * reginfo, netsnmp_agent_request_info * reqinfo, netsnmp_request_info * requests)

implements the old_api handler

Definition at line 226 of file old_api.c.

References variable::acl, variable::findVar, variable::magic, MIB_CLIENTS_ARE_EVIL, netsnmp_agent_request_info_s::mode, netsnmp_mib_handler_s::myvoid, variable_list::name, variable::name, variable_list::name_length, variable::namelen, netsnmp_request_info_s::next, NULL, netsnmp_request_info_s::requestvb, netsnmp_handler_registration_s::rootoid, netsnmp_handler_registration_s::rootoid_len, snmp_set_var_objid(), and variable::type.

Referenced by get_old_api_handler().

  int netsnmp_register_mib_table_row (const char * moduleName, struct variable * var, size_t varsize, size_t numvars, oid * mibloc, size_t mibloclen, int priority, int var_subid, netsnmp_session * ss, const char * context, int timeout, int flags)

registers a row within a mib table

Definition at line 107 of file old_api.c.

References netsnmp_handler_registration_s::contextName, register_parameters::contextName, register_parameters::flags, get_old_api_handler(), netsnmp_handler_registration_s::handler, HANDLER_CAN_RWRITE, netsnmp_handler_registration_s::handlerName, netsnmp_handler_registration_s::modes, netsnmp_mib_handler_s::myvoid, register_parameters::name, register_parameters::namelen, netsnmp_handler_registration_free(), netsnmp_register_handler_nocallback(), NULL, netsnmp_handler_registration_s::priority, register_parameters::priority, netsnmp_handler_registration_s::range_subid, register_parameters::range_subid, netsnmp_handler_registration_s::range_ubound, register_parameters::range_ubound, netsnmp_handler_registration_s::rootoid, netsnmp_handler_registration_s::rootoid_len, snmp_call_callbacks(), SNMP_MALLOC_TYPEDEF, netsnmp_handler_registration_s::timeout, and register_parameters::timeout.

  int netsnmp_register_old_api (const char * moduleName, struct variable * var, size_t varsize, size_t numvars, oid * mibloc, size_t mibloclen, int priority, int range_subid, oid range_ubound, netsnmp_session * ss, const char * context, int timeout, int flags)

Registers an old API set into the mib tree.

Functionally this mimics the old register_mib_context() function (and in fact the new register_mib_context() function merely calls this new old_api one).

netsnmp_handler_registration_free(reginfo); already freed

Definition at line 48 of file old_api.c.

References netsnmp_handler_registration_s::contextName, get_old_api_handler(), netsnmp_handler_registration_s::handler, HANDLER_CAN_RWRITE, netsnmp_handler_registration_s::handlerName, memdup(), netsnmp_handler_registration_s::modes, netsnmp_mib_handler_s::myvoid, netsnmp_register_handler(), NULL, netsnmp_handler_registration_s::priority, netsnmp_handler_registration_s::range_subid, netsnmp_handler_registration_s::range_ubound, netsnmp_handler_registration_s::rootoid, netsnmp_handler_registration_s::rootoid_len, SNMP_FREE, SNMP_MALLOC_TYPEDEF, and netsnmp_handler_registration_s::timeout.

Referenced by register_mib_context().