net-snmp 5.7
|
00001 #ifndef ROW_MERGE_H 00002 #define ROW_MERGE_H 00003 00004 /* 00005 * This row_merge helper splits a whole bunch of requests into chunks 00006 * based on the row index that they refer to, and passes all requests 00007 * for a given row to the lower handlers. 00008 */ 00009 00010 #ifdef __cplusplus 00011 extern "C" { 00012 #endif 00013 00014 typedef struct netsnmp_row_merge_status_x { 00015 char count; /* number of requests */ 00016 char rows; /* number of rows (unique indexes) */ 00017 char current; /* current row number */ 00018 char reserved; /* reserver for future use */ 00019 00020 netsnmp_request_info **saved_requests; /* internal use */ 00021 char *saved_status; /* internal use */ 00022 } netsnmp_row_merge_status; 00023 00024 netsnmp_mib_handler *netsnmp_get_row_merge_handler(int); 00025 int netsnmp_register_row_merge(netsnmp_handler_registration *reginfo); 00026 void netsnmp_init_row_merge(void); 00027 00028 int netsnmp_row_merge_status_first(netsnmp_handler_registration *reginfo, 00029 netsnmp_agent_request_info *reqinfo); 00030 int netsnmp_row_merge_status_last(netsnmp_handler_registration *reginfo, 00031 netsnmp_agent_request_info *reqinfo); 00032 00033 Netsnmp_Node_Handler netsnmp_row_merge_helper_handler; 00034 00035 #ifdef __cplusplus 00036 } 00037 #endif 00038 #endif