マクロ定義 | |
#define | ROW_MERGE_WAITING 0 |
#define | ROW_MERGE_ACTIVE 1 |
#define | ROW_MERGE_DONE 2 |
#define | ROW_MERGE_HEAD 3 |
関数 | |
netsnmp_mib_handler * | netsnmp_get_row_merge_handler (int prefix_len) |
returns a row_merge handler that can be injected into a given handler chain. | |
int | netsnmp_register_row_merge (netsnmp_handler_registration *reginfo) |
functionally the same as calling netsnmp_register_handler() but also injects a row_merge handler at the same time for you. | |
netsnmp_row_merge_status * | netsnmp_row_merge_status_get (netsnmp_handler_registration *reginfo, netsnmp_agent_request_info *reqinfo, int create_missing) |
retrieve row_merge_status | |
int | netsnmp_row_merge_status_first (netsnmp_handler_registration *reginfo, netsnmp_agent_request_info *reqinfo) |
Determine if this is the first row | |
int | netsnmp_row_merge_status_last (netsnmp_handler_registration *reginfo, netsnmp_agent_request_info *reqinfo) |
Determine if this is the last row | |
int | netsnmp_row_merge_helper_handler (netsnmp_mib_handler *handler, netsnmp_handler_registration *reginfo, netsnmp_agent_request_info *reqinfo, netsnmp_request_info *requests) |
Implements the row_merge handler | |
void | netsnmp_init_row_merge (void) |
initializes the row_merge helper which then registers a row_merge handler as a run-time injectable handler for configuration file use. |
This helper splits a whole bunch of requests into chunks based on the row index that they refer to, and passes all requests for a given row to the lower handlers. This is useful for handlers that don't want to process multiple rows at the same time, but are happy to iterate through the request list for a single row.
netsnmp_mib_handler* netsnmp_get_row_merge_handler | ( | int | prefix_len | ) |
returns a row_merge handler that can be injected into a given handler chain.
row_merge.c の 28 行で定義されています。
参照先 netsnmp_mib_handler_s::myvoid・netsnmp_create_handler()・netsnmp_row_merge_helper_handler()・NULL.
void netsnmp_init_row_merge | ( | void | ) |
initializes the row_merge helper which then registers a row_merge handler as a run-time injectable handler for configuration file use.
row_merge.c の 358 行で定義されています。
参照先 netsnmp_get_row_merge_handler()・netsnmp_register_handler_by_name().
int netsnmp_register_row_merge | ( | netsnmp_handler_registration * | reginfo | ) |
functionally the same as calling netsnmp_register_handler() but also injects a row_merge handler at the same time for you.
row_merge.c の 42 行で定義されています。
参照先 netsnmp_get_row_merge_handler()・netsnmp_inject_handler()・netsnmp_register_handler()・netsnmp_handler_registration_s::rootoid_len.
int netsnmp_row_merge_helper_handler | ( | netsnmp_mib_handler * | handler, | |
netsnmp_handler_registration * | reginfo, | |||
netsnmp_agent_request_info * | reqinfo, | |||
netsnmp_request_info * | requests | |||
) |
Implements the row_merge handler
row_merge.c の 154 行で定義されています。
参照先 netsnmp_row_merge_status_x::count・netsnmp_agent_request_info_s::mode・netsnmp_mib_handler_s::myvoid・variable_list::name・variable_list::name_length・netsnmp_call_next_handler()・netsnmp_row_merge_status_get()・netsnmp_request_info_s::next・NULL・netsnmp_request_info_s::prev・netsnmp_request_info_s::processed・netsnmp_request_info_s::requestvb・netsnmp_handler_registration_s::rootoid・netsnmp_handler_registration_s::rootoid_len・ROW_MERGE_DONE・ROW_MERGE_WAITING・netsnmp_row_merge_status_x::rows・netsnmp_row_merge_status_x::saved_requests・netsnmp_row_merge_status_x::saved_status・SNMP_FREE.
int netsnmp_row_merge_status_first | ( | netsnmp_handler_registration * | reginfo, | |
netsnmp_agent_request_info * | reqinfo | |||
) |
Determine if this is the first row
returns 1 if this is the first row for this pass of the handler.
row_merge.c の 110 行で定義されています。
参照先 netsnmp_row_merge_status_x::count・netsnmp_row_merge_status_x::current・netsnmp_row_merge_status_get()・NULL.
netsnmp_row_merge_status* netsnmp_row_merge_status_get | ( | netsnmp_handler_registration * | reginfo, | |
netsnmp_agent_request_info * | reqinfo, | |||
int | create_missing | |||
) |
retrieve row_merge_status
row_merge.c の 67 行で定義されています。
参照先 netsnmp_agent_add_list_data()・netsnmp_agent_get_list_data()・netsnmp_create_data_list()・NULL・snmp_log()・SNMP_MALLOC_TYPEDEF.
参照元 netsnmp_row_merge_helper_handler()・netsnmp_row_merge_status_first()・netsnmp_row_merge_status_last().
int netsnmp_row_merge_status_last | ( | netsnmp_handler_registration * | reginfo, | |
netsnmp_agent_request_info * | reqinfo | |||
) |
Determine if this is the last row
returns 1 if this is the last row for this pass of the handler.
row_merge.c の 130 行で定義されています。
参照先 netsnmp_row_merge_status_x::count・netsnmp_row_merge_status_x::current・netsnmp_row_merge_status_get()・NULL・netsnmp_row_merge_status_x::rows.