.TH "set_data: helps storing and retriving of data during set transactions" 3 "17 Oct 2003" "net-snmp" \" -*- nroff -*-
.ad l
.nh
.SH NAME
set_data: helps storing and retriving of data during set transactions \- The set_data helper. 
More...
.SS "Data Structures"

.in +1c
.ti -1c
.RI "struct \fBnetsnmp_set_data_master_s\fP"
.br
.ti -1c
.RI "struct \fBnetsnmp_set_data_store_s\fP"
.br
.in -1c
.SS "Functions"

.in +1c
.ti -1c
.RI "void \fBnetsnmp_set_data_cache\fP (netsnmp_request_info *request, unsigned int magic_num, void *new_data, size_t new_data_len, void *old_data, size_t old_data_len)"
.br
.RI "\fIstores new and old information based on the magic number.\fP"
.ti -1c
.RI "netsnmp_set_data_ netsnmp_mib_handler * \fBnetsnmp_get_multiplexer_handler\fP (\fBnetsnmp_mib_handler_methods\fP *req)"
.br
.RI "\fIreturns a multiplixer handler given a \fBnetsnmp_mib_handler_methods\fP structure of subhandlers.\fP"
.ti -1c
.RI "int \fBnetsnmp_multiplexer_helper_handler\fP (netsnmp_mib_handler *handler, netsnmp_handler_registration *reginfo, netsnmp_agent_request_info *reqinfo, netsnmp_request_info *requests)"
.br
.RI "\fIimplements the multiplexer helper\fP"
.in -1c
.SH "DETAILED DESCRIPTION"
.PP 
The set_data helper.
.PP
.SH "FUNCTION DOCUMENTATION"
.PP 
.SS "netsnmp_set_data_ netsnmp_mib_handler* netsnmp_get_multiplexer_handler (\fBnetsnmp_mib_handler_methods\fP * req)"
.PP
returns a multiplixer handler given a \fBnetsnmp_mib_handler_methods\fP structure of subhandlers.
.PP
Definition at line 84 of file set_data.c.
.PP
References netsnmp_create_handler(), and netsnmp_multiplexer_helper_handler().
.SS "int netsnmp_multiplexer_helper_handler (netsnmp_mib_handler * handler, netsnmp_handler_registration * reginfo, netsnmp_agent_request_info * reqinfo, netsnmp_request_info * requests)"
.PP
implements the multiplexer helper
.PP
Definition at line 105 of file set_data.c.
.PP
References netsnmp_call_handler(), and netsnmp_extract_iterator_context().
.PP
Referenced by netsnmp_get_multiplexer_handler().
.SS "void netsnmp_set_data_cache (netsnmp_request_info * request, unsigned int magic_num, void * new_data, size_t new_data_len, void * old_data, size_t old_data_len)"
.PP
stores new and old information based on the magic number.
.PP
Definition at line 45 of file set_data.c.
.PP
References netsnmp_create_data_list(), netsnmp_extract_table_info(), netsnmp_request_add_list_data(), and SNMP_MIN.
