2 * Note: this file originally auto-generated by mib2c using
3 * : mib2c.scalar.conf,v 1.9 2005/01/07 09:37:18 dts12 Exp $
4 * : mib2c.create-dataset.conf,v 5.4 2004/02/02 19:06:53 rstory Exp $
5 * : mib2c.notify.conf,v 5.3 2004/04/15 12:29:19 dts12 Exp $
8 #include "netsnmp_bridge.h"
10 static oid snmptrap_oid[] = { 1, 3, 6, 1, 6, 3, 1, 1, 4, 1, 0 };
11 static unsigned int callback_id = 0;
13 static netsnmp_table_data_set *vs_table_set = NULL;
14 static netsnmp_table_data_set *rs_table_set = NULL;
16 /** Initializes the ultramonkey-l7 module */
18 init_netsnmp_bridge(void *clientarg)
20 static oid um7LogVsdNetwork_oid[] =
21 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 1, 1 };
22 static oid um7LogVsdNetworkBandwidth_oid[] =
23 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 1, 2 };
24 static oid um7LogVsdNetworkNumConnection_oid[] =
25 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 1, 3 };
26 static oid um7LogVsdNetworkQoS_oid[] =
27 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 1, 4 };
28 static oid um7LogVsdVirtualService_oid[] =
29 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 1, 5 };
30 static oid um7LogVsdRealServer_oid[] =
31 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 1, 6 };
32 static oid um7LogVsdRealServerBalancing_oid[] =
33 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 1, 7 };
34 static oid um7LogVsdSorryServer_oid[] =
35 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 1, 8 };
36 static oid um7LogVsdReplication_oid[] =
37 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 1, 9 };
38 static oid um7LogVsdStartStop_oid[] =
39 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 1, 10 };
40 static oid um7LogVsdSystem_oid[] =
41 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 1, 11 };
42 static oid um7LogVsdSystemMemory_oid[] =
43 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 1, 12 };
44 static oid um7LogVsdSystemSocket_oid[] =
45 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 1, 13 };
46 static oid um7LogVsdSystemSignal_oid[] =
47 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 1, 14 };
48 static oid um7LogVsdEnvironment_oid[] =
49 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 1, 15 };
50 static oid um7LogVsdEnvironmentParameter_oid[] =
51 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 1, 16 };
52 static oid um7LogVsdLogger_oid[] =
53 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 1, 17 };
54 static oid um7LogVsdParameter_oid[] =
55 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 1, 18 };
56 static oid um7LogVsdEvent_oid[] =
57 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 1, 19 };
58 static oid um7LogVsdSchedule_oid[] =
59 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 1, 20 };
60 static oid um7LogVsdProgram_oid[] =
61 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 1, 21 };
62 static oid um7LogVsdProtocol_oid[] =
63 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 1, 22 };
64 static oid um7LogVsdModule_oid[] =
65 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 1, 23 };
66 static oid um7LogVsadmParse_oid[] =
67 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 2, 1 };
68 static oid um7LogVsadmOperate_oid[] =
69 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 2, 2 };
70 static oid um7LogVsadmCommunicate_oid[] =
71 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 2, 3 };
72 static oid um7LogVsadmConfigResult_oid[] =
73 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 2, 4 };
74 static oid um7LogVsadmCommon_oid[] =
75 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 2, 5 };
76 static oid um7LogVsadmLogger_oid[] =
77 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 2, 6 };
78 static oid um7LogVsadmParameter_oid[] =
79 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 2, 7 };
80 static oid um7LogVsadmProtocol_oid[] =
81 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 2, 8 };
82 static oid um7LogVsadmModule_oid[] =
83 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 2, 9 };
84 static oid um7LogSnmpStartStop_oid[] =
85 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 3, 1 };
86 static oid um7LogSnmpManagerReceive_oid[] =
87 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 3, 2 };
88 static oid um7LogSnmpManagerSend_oid[] =
89 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 3, 3 };
90 static oid um7LogSnmpL7vsdReceive_oid[] =
91 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 3, 4 };
92 static oid um7LogSnmpL7vsdSend_oid[] =
93 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 3, 5 };
94 static oid um7LogSnmpLogger_oid[] =
95 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 3, 6 };
96 static oid um7LogSnmpParameter_oid[] =
97 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, 3, 7 };
98 static oid um7StatMessage_oid[] =
99 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 4, 1 };
100 static oid um7StatReplication_oid[] =
101 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 4, 2 };
102 static oid um7StatSnmpAgent_oid[] =
103 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 4, 3 };
105 DEBUGMSGTL(("ultramonkey-l7", "Initializing\n"));
107 netsnmp_register_scalar(netsnmp_create_handler_registration
108 ("um7LogVsdNetwork", handle_um7LogVsdNetwork,
109 um7LogVsdNetwork_oid,
110 OID_LENGTH(um7LogVsdNetwork_oid),
112 netsnmp_register_scalar(netsnmp_create_handler_registration
113 ("um7LogVsdNetworkBandwidth",
114 handle_um7LogVsdNetworkBandwidth,
115 um7LogVsdNetworkBandwidth_oid,
116 OID_LENGTH(um7LogVsdNetworkBandwidth_oid),
118 netsnmp_register_scalar(netsnmp_create_handler_registration
119 ("um7LogVsdNetworkNumConnection",
120 handle_um7LogVsdNetworkNumConnection,
121 um7LogVsdNetworkNumConnection_oid,
122 OID_LENGTH(um7LogVsdNetworkNumConnection_oid),
124 netsnmp_register_scalar(netsnmp_create_handler_registration
125 ("um7LogVsdNetworkQoS",
126 handle_um7LogVsdNetworkQoS,
127 um7LogVsdNetworkQoS_oid,
128 OID_LENGTH(um7LogVsdNetworkQoS_oid),
130 netsnmp_register_scalar(netsnmp_create_handler_registration
131 ("um7LogVsdVirtualService",
132 handle_um7LogVsdVirtualService,
133 um7LogVsdVirtualService_oid,
134 OID_LENGTH(um7LogVsdVirtualService_oid),
136 netsnmp_register_scalar(netsnmp_create_handler_registration
137 ("um7LogVsdRealServer",
138 handle_um7LogVsdRealServer,
139 um7LogVsdRealServer_oid,
140 OID_LENGTH(um7LogVsdRealServer_oid),
142 netsnmp_register_scalar(netsnmp_create_handler_registration
143 ("um7LogVsdRealServerBalancing",
144 handle_um7LogVsdRealServerBalancing,
145 um7LogVsdRealServerBalancing_oid,
146 OID_LENGTH(um7LogVsdRealServerBalancing_oid),
148 netsnmp_register_scalar(netsnmp_create_handler_registration
149 ("um7LogVsdSorryServer",
150 handle_um7LogVsdSorryServer,
151 um7LogVsdSorryServer_oid,
152 OID_LENGTH(um7LogVsdSorryServer_oid),
154 netsnmp_register_scalar(netsnmp_create_handler_registration
155 ("um7LogVsdReplication",
156 handle_um7LogVsdReplication,
157 um7LogVsdReplication_oid,
158 OID_LENGTH(um7LogVsdReplication_oid),
160 netsnmp_register_scalar(netsnmp_create_handler_registration
161 ("um7LogVsdStartStop",
162 handle_um7LogVsdStartStop,
163 um7LogVsdStartStop_oid,
164 OID_LENGTH(um7LogVsdStartStop_oid),
166 netsnmp_register_scalar(netsnmp_create_handler_registration
167 ("um7LogVsdSystem", handle_um7LogVsdSystem,
169 OID_LENGTH(um7LogVsdSystem_oid),
171 netsnmp_register_scalar(netsnmp_create_handler_registration
172 ("um7LogVsdSystemMemory",
173 handle_um7LogVsdSystemMemory,
174 um7LogVsdSystemMemory_oid,
175 OID_LENGTH(um7LogVsdSystemMemory_oid),
177 netsnmp_register_scalar(netsnmp_create_handler_registration
178 ("um7LogVsdSystemSocket",
179 handle_um7LogVsdSystemSocket,
180 um7LogVsdSystemSocket_oid,
181 OID_LENGTH(um7LogVsdSystemSocket_oid),
183 netsnmp_register_scalar(netsnmp_create_handler_registration
184 ("um7LogVsdSystemSignal",
185 handle_um7LogVsdSystemSignal,
186 um7LogVsdSystemSignal_oid,
187 OID_LENGTH(um7LogVsdSystemSignal_oid),
189 netsnmp_register_scalar(netsnmp_create_handler_registration
190 ("um7LogVsdEnvironment",
191 handle_um7LogVsdEnvironment,
192 um7LogVsdEnvironment_oid,
193 OID_LENGTH(um7LogVsdEnvironment_oid),
195 netsnmp_register_scalar(netsnmp_create_handler_registration
196 ("um7LogVsdEnvironmentParameter",
197 handle_um7LogVsdEnvironmentParameter,
198 um7LogVsdEnvironmentParameter_oid,
199 OID_LENGTH(um7LogVsdEnvironmentParameter_oid),
201 netsnmp_register_scalar(netsnmp_create_handler_registration
202 ("um7LogVsdLogger", handle_um7LogVsdLogger,
204 OID_LENGTH(um7LogVsdLogger_oid),
206 netsnmp_register_scalar(netsnmp_create_handler_registration
207 ("um7LogVsdParameter",
208 handle_um7LogVsdParameter,
209 um7LogVsdParameter_oid,
210 OID_LENGTH(um7LogVsdParameter_oid),
212 netsnmp_register_scalar(netsnmp_create_handler_registration
213 ("um7LogVsdEvent", handle_um7LogVsdEvent,
215 OID_LENGTH(um7LogVsdEvent_oid),
217 netsnmp_register_scalar(netsnmp_create_handler_registration
218 ("um7LogVsdSchedule", handle_um7LogVsdSchedule,
219 um7LogVsdSchedule_oid,
220 OID_LENGTH(um7LogVsdSchedule_oid),
222 netsnmp_register_scalar(netsnmp_create_handler_registration
223 ("um7LogVsdProgram", handle_um7LogVsdProgram,
224 um7LogVsdProgram_oid,
225 OID_LENGTH(um7LogVsdProgram_oid),
227 netsnmp_register_scalar(netsnmp_create_handler_registration
228 ("um7LogVsdProtocol", handle_um7LogVsdProtocol,
229 um7LogVsdProtocol_oid,
230 OID_LENGTH(um7LogVsdProtocol_oid),
232 netsnmp_register_scalar(netsnmp_create_handler_registration
233 ("um7LogVsdModule", handle_um7LogVsdModule,
235 OID_LENGTH(um7LogVsdModule_oid),
237 netsnmp_register_scalar(netsnmp_create_handler_registration
238 ("um7LogVsadmParse", handle_um7LogVsadmParse,
239 um7LogVsadmParse_oid,
240 OID_LENGTH(um7LogVsadmParse_oid),
242 netsnmp_register_scalar(netsnmp_create_handler_registration
243 ("um7LogVsadmOperate",
244 handle_um7LogVsadmOperate,
245 um7LogVsadmOperate_oid,
246 OID_LENGTH(um7LogVsadmOperate_oid),
248 netsnmp_register_scalar(netsnmp_create_handler_registration
249 ("um7LogVsadmCommunicate",
250 handle_um7LogVsadmCommunicate,
251 um7LogVsadmCommunicate_oid,
252 OID_LENGTH(um7LogVsadmCommunicate_oid),
254 netsnmp_register_scalar(netsnmp_create_handler_registration
255 ("um7LogVsadmConfigResult",
256 handle_um7LogVsadmConfigResult,
257 um7LogVsadmConfigResult_oid,
258 OID_LENGTH(um7LogVsadmConfigResult_oid),
260 netsnmp_register_scalar(netsnmp_create_handler_registration
261 ("um7LogVsadmCommon", handle_um7LogVsadmCommon,
262 um7LogVsadmCommon_oid,
263 OID_LENGTH(um7LogVsadmCommon_oid),
265 netsnmp_register_scalar(netsnmp_create_handler_registration
266 ("um7LogVsadmLogger", handle_um7LogVsadmLogger,
267 um7LogVsadmLogger_oid,
268 OID_LENGTH(um7LogVsadmLogger_oid),
270 netsnmp_register_scalar(netsnmp_create_handler_registration
271 ("um7LogVsadmParameter",
272 handle_um7LogVsadmParameter,
273 um7LogVsadmParameter_oid,
274 OID_LENGTH(um7LogVsadmParameter_oid),
276 netsnmp_register_scalar(netsnmp_create_handler_registration
277 ("um7LogVsadmProtocol",
278 handle_um7LogVsadmProtocol,
279 um7LogVsadmProtocol_oid,
280 OID_LENGTH(um7LogVsadmProtocol_oid),
282 netsnmp_register_scalar(netsnmp_create_handler_registration
283 ("um7LogVsadmModule", handle_um7LogVsadmModule,
284 um7LogVsadmModule_oid,
285 OID_LENGTH(um7LogVsadmModule_oid),
287 netsnmp_register_scalar(netsnmp_create_handler_registration
288 ("um7LogSnmpStartStop",
289 handle_um7LogSnmpStartStop,
290 um7LogSnmpStartStop_oid,
291 OID_LENGTH(um7LogSnmpStartStop_oid),
293 netsnmp_register_scalar(netsnmp_create_handler_registration
294 ("um7LogSnmpManagerReceive",
295 handle_um7LogSnmpManagerReceive,
296 um7LogSnmpManagerReceive_oid,
297 OID_LENGTH(um7LogSnmpManagerReceive_oid),
299 netsnmp_register_scalar(netsnmp_create_handler_registration
300 ("um7LogSnmpManagerSend",
301 handle_um7LogSnmpManagerSend,
302 um7LogSnmpManagerSend_oid,
303 OID_LENGTH(um7LogSnmpManagerSend_oid),
305 netsnmp_register_scalar(netsnmp_create_handler_registration
306 ("um7LogSnmpL7vsdReceive",
307 handle_um7LogSnmpL7vsdReceive,
308 um7LogSnmpL7vsdReceive_oid,
309 OID_LENGTH(um7LogSnmpL7vsdReceive_oid),
311 netsnmp_register_scalar(netsnmp_create_handler_registration
312 ("um7LogSnmpL7vsdSend",
313 handle_um7LogSnmpL7vsdSend,
314 um7LogSnmpL7vsdSend_oid,
315 OID_LENGTH(um7LogSnmpL7vsdSend_oid),
317 netsnmp_register_scalar(netsnmp_create_handler_registration
318 ("um7LogSnmpLogger", handle_um7LogSnmpLogger,
319 um7LogSnmpLogger_oid,
320 OID_LENGTH(um7LogSnmpLogger_oid),
322 netsnmp_register_scalar(netsnmp_create_handler_registration
323 ("um7LogSnmpParameter",
324 handle_um7LogSnmpParameter,
325 um7LogSnmpParameter_oid,
326 OID_LENGTH(um7LogSnmpParameter_oid),
328 netsnmp_register_scalar(netsnmp_create_handler_registration
329 ("um7StatMessage", handle_um7StatMessage,
331 OID_LENGTH(um7StatMessage_oid),
333 netsnmp_register_scalar(netsnmp_create_handler_registration
334 ("um7StatReplication",
335 handle_um7StatReplication,
336 um7StatReplication_oid,
337 OID_LENGTH(um7StatReplication_oid),
339 netsnmp_register_scalar(netsnmp_create_handler_registration
340 ("um7StatSnmpAgent", handle_um7StatSnmpAgent,
341 um7StatSnmpAgent_oid,
342 OID_LENGTH(um7StatSnmpAgent_oid),
346 * here we initialize all the tables we're planning on supporting
348 initialize_table_um7VirtualServiceTable();
349 initialize_table_um7RealServerTable();
351 // request mib collection every 1 sec.
352 callback_id = snmp_alarm_register(REPEAT_SEC, SA_REPEAT, getL7vsdData, clientarg);
353 if (callback_id == 0) {
359 handle_um7LogVsdNetwork(netsnmp_mib_handler *handler,
360 netsnmp_handler_registration *reginfo,
361 netsnmp_agent_request_info *reqinfo,
362 netsnmp_request_info *requests)
364 struct l7vsd_log_level *log = l7ag_store_mibdata::getInstance().getVsdLogmibdata();
366 switch (reqinfo->mode) {
368 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
369 (u_char *) &log->network,
370 sizeof(l7vs::LOG_LEVEL_TAG));
374 snmp_log(LOG_ERR, "unknown mode (%d) in handle_um7LogVsdNetwork\n",
376 return SNMP_ERR_GENERR;
379 return SNMP_ERR_NOERROR;
383 handle_um7LogVsdNetworkBandwidth(netsnmp_mib_handler *handler,
384 netsnmp_handler_registration *reginfo,
385 netsnmp_agent_request_info *reqinfo,
386 netsnmp_request_info *requests)
388 struct l7vsd_log_level *log = l7ag_store_mibdata::getInstance().getVsdLogmibdata();
390 switch (reqinfo->mode) {
392 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
393 (u_char *) &log->networkBandwidth,
394 sizeof(l7vs::LOG_LEVEL_TAG));
399 "unknown mode (%d) in handle_um7LogVsdNetworkBandwidth\n",
401 return SNMP_ERR_GENERR;
404 return SNMP_ERR_NOERROR;
408 handle_um7LogVsdNetworkNumConnection(netsnmp_mib_handler *handler,
409 netsnmp_handler_registration *reginfo,
410 netsnmp_agent_request_info *reqinfo,
411 netsnmp_request_info *requests)
413 struct l7vsd_log_level *log = l7ag_store_mibdata::getInstance().getVsdLogmibdata();
415 switch (reqinfo->mode) {
417 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
418 (u_char *) &log->networkNumConnection,
419 sizeof(l7vs::LOG_LEVEL_TAG));
424 "unknown mode (%d) in handle_um7LogVsdNetworkNumConnection\n",
426 return SNMP_ERR_GENERR;
429 return SNMP_ERR_NOERROR;
433 handle_um7LogVsdNetworkQoS(netsnmp_mib_handler *handler,
434 netsnmp_handler_registration *reginfo,
435 netsnmp_agent_request_info *reqinfo,
436 netsnmp_request_info *requests)
438 struct l7vsd_log_level *log = l7ag_store_mibdata::getInstance().getVsdLogmibdata();
440 switch (reqinfo->mode) {
442 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
443 (u_char *) &log->networkQoS,
444 sizeof(l7vs::LOG_LEVEL_TAG));
449 "unknown mode (%d) in handle_um7LogVsdNetworkQoS\n",
451 return SNMP_ERR_GENERR;
454 return SNMP_ERR_NOERROR;
458 handle_um7LogVsdVirtualService(netsnmp_mib_handler *handler,
459 netsnmp_handler_registration *reginfo,
460 netsnmp_agent_request_info *reqinfo,
461 netsnmp_request_info *requests)
463 struct l7vsd_log_level *log = l7ag_store_mibdata::getInstance().getVsdLogmibdata();
465 switch (reqinfo->mode) {
467 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
468 (u_char *) &log->virtualService,
469 sizeof(l7vs::LOG_LEVEL_TAG));
474 "unknown mode (%d) in handle_um7LogVsdVirtualService\n",
476 return SNMP_ERR_GENERR;
479 return SNMP_ERR_NOERROR;
483 handle_um7LogVsdRealServer(netsnmp_mib_handler *handler,
484 netsnmp_handler_registration *reginfo,
485 netsnmp_agent_request_info *reqinfo,
486 netsnmp_request_info *requests)
488 struct l7vsd_log_level *log = l7ag_store_mibdata::getInstance().getVsdLogmibdata();
490 switch (reqinfo->mode) {
492 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
493 (u_char *) &log->realServer,
494 sizeof(l7vs::LOG_LEVEL_TAG));
499 "unknown mode (%d) in handle_um7LogVsdRealServer\n",
501 return SNMP_ERR_GENERR;
504 return SNMP_ERR_NOERROR;
508 handle_um7LogVsdRealServerBalancing(netsnmp_mib_handler *handler,
509 netsnmp_handler_registration *reginfo,
510 netsnmp_agent_request_info *reqinfo,
511 netsnmp_request_info *requests)
513 struct l7vsd_log_level *log = l7ag_store_mibdata::getInstance().getVsdLogmibdata();
515 switch (reqinfo->mode) {
517 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
518 (u_char *) &log->realServerBalancing,
519 sizeof(l7vs::LOG_LEVEL_TAG));
524 "unknown mode (%d) in handle_um7LogVsdRealServerBalancing\n",
526 return SNMP_ERR_GENERR;
529 return SNMP_ERR_NOERROR;
533 handle_um7LogVsdSorryServer(netsnmp_mib_handler *handler,
534 netsnmp_handler_registration *reginfo,
535 netsnmp_agent_request_info *reqinfo,
536 netsnmp_request_info *requests)
538 struct l7vsd_log_level *log = l7ag_store_mibdata::getInstance().getVsdLogmibdata();
540 switch (reqinfo->mode) {
542 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
543 (u_char *) &log->sorryServer,
544 sizeof(l7vs::LOG_LEVEL_TAG));
549 "unknown mode (%d) in handle_um7LogVsdSorryServer\n",
551 return SNMP_ERR_GENERR;
554 return SNMP_ERR_NOERROR;
558 handle_um7LogVsdReplication(netsnmp_mib_handler *handler,
559 netsnmp_handler_registration *reginfo,
560 netsnmp_agent_request_info *reqinfo,
561 netsnmp_request_info *requests)
563 struct l7vsd_log_level *log = l7ag_store_mibdata::getInstance().getVsdLogmibdata();
565 switch (reqinfo->mode) {
567 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
568 (u_char *) &log->replication,
569 sizeof(l7vs::LOG_LEVEL_TAG));
574 "unknown mode (%d) in handle_um7LogVsdReplication\n",
576 return SNMP_ERR_GENERR;
579 return SNMP_ERR_NOERROR;
583 handle_um7LogVsdStartStop(netsnmp_mib_handler *handler,
584 netsnmp_handler_registration *reginfo,
585 netsnmp_agent_request_info *reqinfo,
586 netsnmp_request_info *requests)
588 struct l7vsd_log_level *log = l7ag_store_mibdata::getInstance().getVsdLogmibdata();
590 switch (reqinfo->mode) {
592 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
593 (u_char *) &log->startStop,
594 sizeof(l7vs::LOG_LEVEL_TAG));
599 "unknown mode (%d) in handle_um7LogVsdStartStop\n",
601 return SNMP_ERR_GENERR;
604 return SNMP_ERR_NOERROR;
608 handle_um7LogVsdSystem(netsnmp_mib_handler *handler,
609 netsnmp_handler_registration *reginfo,
610 netsnmp_agent_request_info *reqinfo,
611 netsnmp_request_info *requests)
613 struct l7vsd_log_level *log = l7ag_store_mibdata::getInstance().getVsdLogmibdata();
615 switch (reqinfo->mode) {
617 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
618 (u_char *) &log->system,
619 sizeof(l7vs::LOG_LEVEL_TAG));
623 snmp_log(LOG_ERR, "unknown mode (%d) in handle_um7LogVsdSystem\n",
625 return SNMP_ERR_GENERR;
628 return SNMP_ERR_NOERROR;
632 handle_um7LogVsdSystemMemory(netsnmp_mib_handler *handler,
633 netsnmp_handler_registration *reginfo,
634 netsnmp_agent_request_info *reqinfo,
635 netsnmp_request_info *requests)
637 struct l7vsd_log_level *log = l7ag_store_mibdata::getInstance().getVsdLogmibdata();
639 switch (reqinfo->mode) {
641 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
642 (u_char *) &log->systemMemory,
643 sizeof(l7vs::LOG_LEVEL_TAG));
648 "unknown mode (%d) in handle_um7LogVsdSystemMemory\n",
650 return SNMP_ERR_GENERR;
653 return SNMP_ERR_NOERROR;
657 handle_um7LogVsdSystemSocket(netsnmp_mib_handler *handler,
658 netsnmp_handler_registration *reginfo,
659 netsnmp_agent_request_info *reqinfo,
660 netsnmp_request_info *requests)
662 struct l7vsd_log_level *log = l7ag_store_mibdata::getInstance().getVsdLogmibdata();
664 switch (reqinfo->mode) {
666 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
667 (u_char *) &log->systemSocket,
668 sizeof(l7vs::LOG_LEVEL_TAG));
673 "unknown mode (%d) in handle_um7LogVsdSystemSocket\n",
675 return SNMP_ERR_GENERR;
678 return SNMP_ERR_NOERROR;
682 handle_um7LogVsdSystemSignal(netsnmp_mib_handler *handler,
683 netsnmp_handler_registration *reginfo,
684 netsnmp_agent_request_info *reqinfo,
685 netsnmp_request_info *requests)
687 struct l7vsd_log_level *log = l7ag_store_mibdata::getInstance().getVsdLogmibdata();
689 switch (reqinfo->mode) {
691 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
692 (u_char *) &log->systemSignal,
693 sizeof(l7vs::LOG_LEVEL_TAG));
698 "unknown mode (%d) in handle_um7LogVsdSystemSignal\n",
700 return SNMP_ERR_GENERR;
703 return SNMP_ERR_NOERROR;
707 handle_um7LogVsdEnvironment(netsnmp_mib_handler *handler,
708 netsnmp_handler_registration *reginfo,
709 netsnmp_agent_request_info *reqinfo,
710 netsnmp_request_info *requests)
712 struct l7vsd_log_level *log = l7ag_store_mibdata::getInstance().getVsdLogmibdata();
714 switch (reqinfo->mode) {
716 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
717 (u_char *) &log->environment,
718 sizeof(l7vs::LOG_LEVEL_TAG));
723 "unknown mode (%d) in handle_um7LogVsdEnvironment\n",
725 return SNMP_ERR_GENERR;
728 return SNMP_ERR_NOERROR;
732 handle_um7LogVsdEnvironmentParameter(netsnmp_mib_handler *handler,
733 netsnmp_handler_registration *reginfo,
734 netsnmp_agent_request_info *reqinfo,
735 netsnmp_request_info *requests)
737 struct l7vsd_log_level *log = l7ag_store_mibdata::getInstance().getVsdLogmibdata();
739 switch (reqinfo->mode) {
741 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
742 (u_char *) &log->environmentParameter,
743 sizeof(l7vs::LOG_LEVEL_TAG));
748 "unknown mode (%d) in handle_um7LogVsdEnvironmentParameter\n",
750 return SNMP_ERR_GENERR;
753 return SNMP_ERR_NOERROR;
757 handle_um7LogVsdLogger(netsnmp_mib_handler *handler,
758 netsnmp_handler_registration *reginfo,
759 netsnmp_agent_request_info *reqinfo,
760 netsnmp_request_info *requests)
762 struct l7vsd_log_level *log = l7ag_store_mibdata::getInstance().getVsdLogmibdata();
764 switch (reqinfo->mode) {
766 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
767 (u_char *) &log->logger,
768 sizeof(l7vs::LOG_LEVEL_TAG));
772 snmp_log(LOG_ERR, "unknown mode (%d) in handle_um7LogVsdLogger\n",
774 return SNMP_ERR_GENERR;
777 return SNMP_ERR_NOERROR;
781 handle_um7LogVsdParameter(netsnmp_mib_handler *handler,
782 netsnmp_handler_registration *reginfo,
783 netsnmp_agent_request_info *reqinfo,
784 netsnmp_request_info *requests)
786 struct l7vsd_log_level *log = l7ag_store_mibdata::getInstance().getVsdLogmibdata();
788 switch (reqinfo->mode) {
790 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
791 (u_char *) &log->parameter,
792 sizeof(l7vs::LOG_LEVEL_TAG));
797 "unknown mode (%d) in handle_um7LogVsdParameter\n",
799 return SNMP_ERR_GENERR;
802 return SNMP_ERR_NOERROR;
806 handle_um7LogVsdEvent(netsnmp_mib_handler *handler,
807 netsnmp_handler_registration *reginfo,
808 netsnmp_agent_request_info *reqinfo,
809 netsnmp_request_info *requests)
811 struct l7vsd_log_level *log = l7ag_store_mibdata::getInstance().getVsdLogmibdata();
813 switch (reqinfo->mode) {
815 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
816 (u_char *) &log->event,
817 sizeof(l7vs::LOG_LEVEL_TAG));
821 snmp_log(LOG_ERR, "unknown mode (%d) in handle_um7LogVsdEvent\n",
823 return SNMP_ERR_GENERR;
826 return SNMP_ERR_NOERROR;
830 handle_um7LogVsdSchedule(netsnmp_mib_handler *handler,
831 netsnmp_handler_registration *reginfo,
832 netsnmp_agent_request_info *reqinfo,
833 netsnmp_request_info *requests)
835 struct l7vsd_log_level *log = l7ag_store_mibdata::getInstance().getVsdLogmibdata();
837 switch (reqinfo->mode) {
839 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
840 (u_char *) &log->schedule,
841 sizeof(l7vs::LOG_LEVEL_TAG));
846 "unknown mode (%d) in handle_um7LogVsdSchedule\n",
848 return SNMP_ERR_GENERR;
851 return SNMP_ERR_NOERROR;
855 handle_um7LogVsdProgram(netsnmp_mib_handler *handler,
856 netsnmp_handler_registration *reginfo,
857 netsnmp_agent_request_info *reqinfo,
858 netsnmp_request_info *requests)
860 struct l7vsd_log_level *log = l7ag_store_mibdata::getInstance().getVsdLogmibdata();
862 switch (reqinfo->mode) {
864 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
865 (u_char *) &log->program,
866 sizeof(l7vs::LOG_LEVEL_TAG));
870 snmp_log(LOG_ERR, "unknown mode (%d) in handle_um7LogVsdProgram\n",
872 return SNMP_ERR_GENERR;
875 return SNMP_ERR_NOERROR;
879 handle_um7LogVsdProtocol(netsnmp_mib_handler *handler,
880 netsnmp_handler_registration *reginfo,
881 netsnmp_agent_request_info *reqinfo,
882 netsnmp_request_info *requests)
884 struct l7vsd_log_level *log = l7ag_store_mibdata::getInstance().getVsdLogmibdata();
886 switch (reqinfo->mode) {
888 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
889 (u_char *) &log->protocol,
890 sizeof(l7vs::LOG_LEVEL_TAG));
895 "unknown mode (%d) in handle_um7LogVsdProtocol\n",
897 return SNMP_ERR_GENERR;
900 return SNMP_ERR_NOERROR;
904 handle_um7LogVsdModule(netsnmp_mib_handler *handler,
905 netsnmp_handler_registration *reginfo,
906 netsnmp_agent_request_info *reqinfo,
907 netsnmp_request_info *requests)
909 struct l7vsd_log_level *log = l7ag_store_mibdata::getInstance().getVsdLogmibdata();
911 switch (reqinfo->mode) {
913 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
914 (u_char *) &log->module,
915 sizeof(l7vs::LOG_LEVEL_TAG));
919 snmp_log(LOG_ERR, "unknown mode (%d) in handle_um7LogVsdModule\n",
921 return SNMP_ERR_GENERR;
924 return SNMP_ERR_NOERROR;
928 handle_um7LogVsadmParse(netsnmp_mib_handler *handler,
929 netsnmp_handler_registration *reginfo,
930 netsnmp_agent_request_info *reqinfo,
931 netsnmp_request_info *requests)
933 struct l7vsadm_log_level *log = l7ag_store_mibdata::getInstance().getVsadmLogmibdata();
935 switch (reqinfo->mode) {
937 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
938 (u_char *) &log->parse,
939 sizeof(l7vs::LOG_LEVEL_TAG));
943 snmp_log(LOG_ERR, "unknown mode (%d) in handle_um7LogVsadmParse\n",
945 return SNMP_ERR_GENERR;
948 return SNMP_ERR_NOERROR;
952 handle_um7LogVsadmOperate(netsnmp_mib_handler *handler,
953 netsnmp_handler_registration *reginfo,
954 netsnmp_agent_request_info *reqinfo,
955 netsnmp_request_info *requests)
957 struct l7vsadm_log_level *log = l7ag_store_mibdata::getInstance().getVsadmLogmibdata();
959 switch (reqinfo->mode) {
961 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
962 (u_char *) &log->operate,
963 sizeof(l7vs::LOG_LEVEL_TAG));
968 "unknown mode (%d) in handle_um7LogVsadmOperate\n",
970 return SNMP_ERR_GENERR;
973 return SNMP_ERR_NOERROR;
977 handle_um7LogVsadmCommunicate(netsnmp_mib_handler *handler,
978 netsnmp_handler_registration *reginfo,
979 netsnmp_agent_request_info *reqinfo,
980 netsnmp_request_info *requests)
982 struct l7vsadm_log_level *log = l7ag_store_mibdata::getInstance().getVsadmLogmibdata();
984 switch (reqinfo->mode) {
986 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
987 (u_char *) &log->communicate,
988 sizeof(l7vs::LOG_LEVEL_TAG));
993 "unknown mode (%d) in handle_um7LogVsadmCommunicate\n",
995 return SNMP_ERR_GENERR;
998 return SNMP_ERR_NOERROR;
1002 handle_um7LogVsadmConfigResult(netsnmp_mib_handler *handler,
1003 netsnmp_handler_registration *reginfo,
1004 netsnmp_agent_request_info *reqinfo,
1005 netsnmp_request_info *requests)
1007 struct l7vsadm_log_level *log = l7ag_store_mibdata::getInstance().getVsadmLogmibdata();
1009 switch (reqinfo->mode) {
1011 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
1012 (u_char *) &log->configResult,
1013 sizeof(l7vs::LOG_LEVEL_TAG));
1018 "unknown mode (%d) in handle_um7LogVsadmConfigResult\n",
1020 return SNMP_ERR_GENERR;
1023 return SNMP_ERR_NOERROR;
1027 handle_um7LogVsadmCommon(netsnmp_mib_handler *handler,
1028 netsnmp_handler_registration *reginfo,
1029 netsnmp_agent_request_info *reqinfo,
1030 netsnmp_request_info *requests)
1032 struct l7vsadm_log_level *log = l7ag_store_mibdata::getInstance().getVsadmLogmibdata();
1034 switch (reqinfo->mode) {
1036 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
1037 (u_char *) &log->common,
1038 sizeof(l7vs::LOG_LEVEL_TAG));
1043 "unknown mode (%d) in handle_um7LogVsadmCommon\n",
1045 return SNMP_ERR_GENERR;
1048 return SNMP_ERR_NOERROR;
1052 handle_um7LogVsadmLogger(netsnmp_mib_handler *handler,
1053 netsnmp_handler_registration *reginfo,
1054 netsnmp_agent_request_info *reqinfo,
1055 netsnmp_request_info *requests)
1057 struct l7vsadm_log_level *log = l7ag_store_mibdata::getInstance().getVsadmLogmibdata();
1059 switch (reqinfo->mode) {
1061 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
1062 (u_char *) &log->logger,
1063 sizeof(l7vs::LOG_LEVEL_TAG));
1068 "unknown mode (%d) in handle_um7LogVsadmLogger\n",
1070 return SNMP_ERR_GENERR;
1073 return SNMP_ERR_NOERROR;
1077 handle_um7LogVsadmParameter(netsnmp_mib_handler *handler,
1078 netsnmp_handler_registration *reginfo,
1079 netsnmp_agent_request_info *reqinfo,
1080 netsnmp_request_info *requests)
1082 struct l7vsadm_log_level *log = l7ag_store_mibdata::getInstance().getVsadmLogmibdata();
1084 switch (reqinfo->mode) {
1086 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
1087 (u_char *) &log->parameter,
1088 sizeof(l7vs::LOG_LEVEL_TAG));
1093 "unknown mode (%d) in handle_um7LogVsadmParameter\n",
1095 return SNMP_ERR_GENERR;
1098 return SNMP_ERR_NOERROR;
1102 handle_um7LogVsadmProtocol(netsnmp_mib_handler *handler,
1103 netsnmp_handler_registration *reginfo,
1104 netsnmp_agent_request_info *reqinfo,
1105 netsnmp_request_info *requests)
1107 struct l7vsadm_log_level *log = l7ag_store_mibdata::getInstance().getVsadmLogmibdata();
1109 switch (reqinfo->mode) {
1111 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
1112 (u_char *) &log->protocol,
1113 sizeof(l7vs::LOG_LEVEL_TAG));
1118 "unknown mode (%d) in handle_um7LogVsadmProtocol\n",
1120 return SNMP_ERR_GENERR;
1123 return SNMP_ERR_NOERROR;
1127 handle_um7LogVsadmModule(netsnmp_mib_handler *handler,
1128 netsnmp_handler_registration *reginfo,
1129 netsnmp_agent_request_info *reqinfo,
1130 netsnmp_request_info *requests)
1132 struct l7vsadm_log_level *log = l7ag_store_mibdata::getInstance().getVsadmLogmibdata();
1134 switch (reqinfo->mode) {
1136 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
1137 (u_char *) &log->module,
1138 sizeof(l7vs::LOG_LEVEL_TAG));
1143 "unknown mode (%d) in handle_um7LogVsadmModule\n",
1145 return SNMP_ERR_GENERR;
1148 return SNMP_ERR_NOERROR;
1152 handle_um7LogSnmpStartStop(netsnmp_mib_handler *handler,
1153 netsnmp_handler_registration *reginfo,
1154 netsnmp_agent_request_info *reqinfo,
1155 netsnmp_request_info *requests)
1157 struct l7snmpagent_log_level *log = l7ag_store_mibdata::getInstance().getAgentLogmibdata();
1159 switch (reqinfo->mode) {
1161 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
1162 (u_char *) &log->startStop,
1163 sizeof(l7vs::LOG_LEVEL_TAG));
1168 "unknown mode (%d) in handle_um7LogSnmpStartStop\n",
1170 return SNMP_ERR_GENERR;
1173 return SNMP_ERR_NOERROR;
1177 handle_um7LogSnmpManagerReceive(netsnmp_mib_handler *handler,
1178 netsnmp_handler_registration *reginfo,
1179 netsnmp_agent_request_info *reqinfo,
1180 netsnmp_request_info *requests)
1182 struct l7snmpagent_log_level *log = l7ag_store_mibdata::getInstance().getAgentLogmibdata();
1184 switch (reqinfo->mode) {
1186 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
1187 (u_char *) &log->managerReceive,
1188 sizeof(l7vs::LOG_LEVEL_TAG));
1193 "unknown mode (%d) in handle_um7LogSnmpManagerReceive\n",
1195 return SNMP_ERR_GENERR;
1198 return SNMP_ERR_NOERROR;
1202 handle_um7LogSnmpManagerSend(netsnmp_mib_handler *handler,
1203 netsnmp_handler_registration *reginfo,
1204 netsnmp_agent_request_info *reqinfo,
1205 netsnmp_request_info *requests)
1207 struct l7snmpagent_log_level *log = l7ag_store_mibdata::getInstance().getAgentLogmibdata();
1209 switch (reqinfo->mode) {
1211 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
1212 (u_char *) &log->managerSend,
1213 sizeof(l7vs::LOG_LEVEL_TAG));
1218 "unknown mode (%d) in handle_um7LogSnmpManagerSend\n",
1220 return SNMP_ERR_GENERR;
1223 return SNMP_ERR_NOERROR;
1227 handle_um7LogSnmpL7vsdReceive(netsnmp_mib_handler *handler,
1228 netsnmp_handler_registration *reginfo,
1229 netsnmp_agent_request_info *reqinfo,
1230 netsnmp_request_info *requests)
1232 struct l7snmpagent_log_level *log = l7ag_store_mibdata::getInstance().getAgentLogmibdata();
1234 switch (reqinfo->mode) {
1236 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
1237 (u_char *) &log->l7vsdReceive,
1238 sizeof(l7vs::LOG_LEVEL_TAG));
1243 "unknown mode (%d) in handle_um7LogSnmpL7vsdReceive\n",
1245 return SNMP_ERR_GENERR;
1248 return SNMP_ERR_NOERROR;
1252 handle_um7LogSnmpL7vsdSend(netsnmp_mib_handler *handler,
1253 netsnmp_handler_registration *reginfo,
1254 netsnmp_agent_request_info *reqinfo,
1255 netsnmp_request_info *requests)
1257 struct l7snmpagent_log_level *log = l7ag_store_mibdata::getInstance().getAgentLogmibdata();
1259 switch (reqinfo->mode) {
1261 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
1262 (u_char *) &log->l7vsdSend,
1263 sizeof(l7vs::LOG_LEVEL_TAG));
1268 "unknown mode (%d) in handle_um7LogSnmpL7vsdSend\n",
1270 return SNMP_ERR_GENERR;
1273 return SNMP_ERR_NOERROR;
1277 handle_um7LogSnmpLogger(netsnmp_mib_handler *handler,
1278 netsnmp_handler_registration *reginfo,
1279 netsnmp_agent_request_info *reqinfo,
1280 netsnmp_request_info *requests)
1282 struct l7snmpagent_log_level *log = l7ag_store_mibdata::getInstance().getAgentLogmibdata();
1284 switch (reqinfo->mode) {
1286 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
1287 (u_char *) &log->logger,
1288 sizeof(l7vs::LOG_LEVEL_TAG));
1292 snmp_log(LOG_ERR, "unknown mode (%d) in handle_um7LogSnmpLogger\n",
1294 return SNMP_ERR_GENERR;
1297 return SNMP_ERR_NOERROR;
1301 handle_um7LogSnmpParameter(netsnmp_mib_handler *handler,
1302 netsnmp_handler_registration *reginfo,
1303 netsnmp_agent_request_info *reqinfo,
1304 netsnmp_request_info *requests)
1306 struct l7snmpagent_log_level *log = l7ag_store_mibdata::getInstance().getAgentLogmibdata();
1308 switch (reqinfo->mode) {
1310 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
1311 (u_char *) &log->parameter,
1312 sizeof(l7vs::LOG_LEVEL_TAG));
1317 "unknown mode (%d) in handle_um7LogSnmpParameter\n",
1319 return SNMP_ERR_GENERR;
1322 return SNMP_ERR_NOERROR;
1326 handle_um7StatMessage(netsnmp_mib_handler *handler,
1327 netsnmp_handler_registration *reginfo,
1328 netsnmp_agent_request_info *reqinfo,
1329 netsnmp_request_info *requests)
1331 struct l7_status *stat = l7ag_store_mibdata::getInstance().getStatmibdata();
1333 switch (reqinfo->mode) {
1335 snmp_set_var_typed_value(requests->requestvb, ASN_OCTET_STR,
1336 (u_char *) &stat->message,
1337 strnlen(stat->message, DISPLAYSTRING_LEN));
1341 snmp_log(LOG_ERR, "unknown mode (%d) in handle_um7StatMessage\n",
1343 return SNMP_ERR_GENERR;
1346 return SNMP_ERR_NOERROR;
1350 handle_um7StatReplication(netsnmp_mib_handler *handler,
1351 netsnmp_handler_registration *reginfo,
1352 netsnmp_agent_request_info *reqinfo,
1353 netsnmp_request_info *requests)
1355 // struct l7_status* stat = l7ag_store_mibdata::getInstance().getStatmibdata();
1357 switch (reqinfo->mode) {
1359 /* snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
1360 (u_char *) &stat->replication,
1361 sizeof(REPLICATION_MODE_TAG) );*/
1366 "unknown mode (%d) in handle_um7StatReplication\n",
1368 return SNMP_ERR_GENERR;
1371 return SNMP_ERR_NOERROR;
1375 handle_um7StatSnmpAgent(netsnmp_mib_handler *handler,
1376 netsnmp_handler_registration *reginfo,
1377 netsnmp_agent_request_info *reqinfo,
1378 netsnmp_request_info *requests)
1380 struct l7_status *stat = l7ag_store_mibdata::getInstance().getStatmibdata();
1382 switch (reqinfo->mode) {
1384 snmp_set_var_typed_value(requests->requestvb, ASN_INTEGER,
1385 (u_char *) &stat->snmpAgent,
1386 sizeof(IPC_STATUS_TAG));
1390 snmp_log(LOG_ERR, "unknown mode (%d) in handle_um7StatSnmpAgent\n",
1392 return SNMP_ERR_GENERR;
1395 return SNMP_ERR_NOERROR;
1398 /** Initialize the um7VirtualServiceTable table by defining its contents and how it's structured */
1400 initialize_table_um7VirtualServiceTable()
1402 static oid um7VirtualServiceTable_oid[] =
1403 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 1 };
1404 size_t um7VirtualServiceTable_oid_len =
1405 OID_LENGTH(um7VirtualServiceTable_oid);
1408 * create the table structure itself
1410 vs_table_set = netsnmp_create_table_data_set("um7VirtualServiceTable");
1411 l7ag_store_mibdata::getInstance().setVsTableSet(vs_table_set);
1414 * comment this out or delete if you don't support creation of new rows
1416 // vs_table_set->allow_creation = 1;
1418 /***************************************************
1421 DEBUGMSGTL(("initialize_table_um7VirtualServiceTable",
1422 "adding indexes to table um7VirtualServiceTable\n"));
1423 netsnmp_table_set_add_indexes(vs_table_set, ASN_INTEGER, /* index: um7VSIndex */
1426 DEBUGMSGTL(("initialize_table_um7VirtualServiceTable",
1427 "adding column types to table um7VirtualServiceTable\n"));
1428 netsnmp_table_set_multi_add_default_row(vs_table_set,
1429 COLUMN_UM7VSINDEX, ASN_INTEGER,
1431 COLUMN_UM7VSPROTOCOL,
1432 ASN_INTEGER, 0, NULL, 0,
1433 COLUMN_UM7VSIPADDRESS,
1434 ASN_OCTET_STR, 0, NULL, 0,
1435 COLUMN_UM7VSPORTNUMBER,
1436 ASN_UNSIGNED, 0, NULL, 0,
1437 COLUMN_UM7VSSCHEDULEMODULE,
1438 ASN_OCTET_STR, 0, NULL, 0,
1439 COLUMN_UM7VSPROTOCOLMODULE,
1440 ASN_OCTET_STR, 0, NULL, 0,
1441 COLUMN_UM7VSPROTOCOLMODULEOPTION,
1442 ASN_OCTET_STR, 0, NULL, 0,
1443 COLUMN_UM7VSRESCHEDULE,
1444 ASN_INTEGER, 0, NULL, 0,
1445 COLUMN_UM7VSSORRYIPADDRESS,
1446 ASN_OCTET_STR, 0, NULL, 0,
1447 COLUMN_UM7VSSORRYPORTNUMBER,
1448 ASN_UNSIGNED, 0, NULL, 0,
1449 COLUMN_UM7VSSORRYTHRESHOLD,
1450 ASN_INTEGER, 0, NULL, 0,
1451 COLUMN_UM7VSSORRYFORCEFLAG,
1452 ASN_INTEGER, 0, NULL, 0,
1453 COLUMN_UM7VSQOSTHRESHOLDUP,
1454 ASN_INTEGER, 0, NULL, 0,
1455 COLUMN_UM7VSQOSTHRESHOLDDOWN,
1456 ASN_INTEGER, 0, NULL, 0,
1457 COLUMN_UM7VSTHROUGHPUTUP,
1458 ASN_INTEGER, 0, NULL, 0,
1459 COLUMN_UM7VSTHROUGHPUTDOWN,
1460 ASN_INTEGER, 0, NULL, 0, 0);
1463 * registering the table with the master agent
1466 * note: if you don't need a subhandler to deal with any aspects
1467 * of the request, change um7VirtualServiceTable_handler to "NULL"
1469 netsnmp_register_table_data_set(netsnmp_create_handler_registration
1470 ("um7VirtualServiceTable",
1471 um7VirtualServiceTable_handler,
1472 um7VirtualServiceTable_oid,
1473 um7VirtualServiceTable_oid_len,
1474 HANDLER_CAN_RWRITE), vs_table_set, NULL);
1477 /** Initialize the um7RealServerTable table by defining its contents and how it's structured */
1479 initialize_table_um7RealServerTable()
1481 static oid um7RealServerTable_oid[] =
1482 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 2 };
1483 size_t um7RealServerTable_oid_len =
1484 OID_LENGTH(um7RealServerTable_oid);
1487 * create the table structure itself
1489 rs_table_set = netsnmp_create_table_data_set("um7RealServerTable");
1490 l7ag_store_mibdata::getInstance().setRsTableSet(rs_table_set);
1493 * comment this out or delete if you don't support creation of new rows
1495 // rs_table_set->allow_creation = 1;
1497 /***************************************************
1500 DEBUGMSGTL(("initialize_table_um7RealServerTable",
1501 "adding indexes to table um7RealServerTable\n"));
1502 netsnmp_table_set_add_indexes(rs_table_set, ASN_INTEGER, /* index: um7RSIndex */
1505 DEBUGMSGTL(("initialize_table_um7RealServerTable",
1506 "adding column types to table um7RealServerTable\n"));
1507 netsnmp_table_set_multi_add_default_row(rs_table_set,
1508 COLUMN_UM7RSINDEX, ASN_INTEGER,
1510 COLUMN_UM7RSVIRTUALSERVICEINDEX,
1511 ASN_INTEGER, 0, NULL, 0,
1512 COLUMN_UM7RSIPADDRESS,
1513 ASN_OCTET_STR, 0, NULL, 0,
1514 COLUMN_UM7RSPORTNUMBER,
1515 ASN_UNSIGNED, 0, NULL, 0,
1516 COLUMN_UM7RSFORWARDMODE,
1517 ASN_INTEGER, 0, NULL, 0,
1519 ASN_INTEGER, 0, NULL, 0,
1520 COLUMN_UM7RSACTIVECONN,
1521 ASN_INTEGER, 0, NULL, 0,
1522 COLUMN_UM7RSINACTIVECONN,
1523 ASN_INTEGER, 0, NULL, 0, 0);
1526 * registering the table with the master agent
1529 * note: if you don't need a subhandler to deal with any aspects
1530 * of the request, change um7RealServerTable_handler to "NULL"
1532 netsnmp_register_table_data_set(netsnmp_create_handler_registration
1533 ("um7RealServerTable",
1534 um7RealServerTable_handler,
1535 um7RealServerTable_oid,
1536 um7RealServerTable_oid_len,
1537 HANDLER_CAN_RWRITE), rs_table_set, NULL);
1540 /** handles requests for the um7VirtualServiceTable table, if anything else needs to be done */
1542 um7VirtualServiceTable_handler(netsnmp_mib_handler *handler,
1543 netsnmp_handler_registration *reginfo,
1544 netsnmp_agent_request_info *reqinfo,
1545 netsnmp_request_info *requests)
1548 * perform anything here that you need to do. The requests have
1549 * already been processed by the master table_dataset handler, but
1550 * this gives you chance to act on the request in some other way
1553 return SNMP_ERR_NOERROR;
1556 /** handles requests for the um7RealServerTable table, if anything else needs to be done */
1558 um7RealServerTable_handler(netsnmp_mib_handler *handler,
1559 netsnmp_handler_registration *reginfo,
1560 netsnmp_agent_request_info *reqinfo,
1561 netsnmp_request_info *requests)
1564 * perform anything here that you need to do. The requests have
1565 * already been processed by the master table_dataset handler, but
1566 * this gives you chance to act on the request in some other way
1569 return SNMP_ERR_NOERROR;
1573 send_um7StateAlert_trap()
1575 netsnmp_variable_list *var_list = NULL;
1576 oid um7StateAlert_oid[] =
1577 { 1, 3, 6, 1, 4, 1, 60000, 0, 1 };
1578 /* oid um7StatReplication_oid[] =
1579 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 4, 2, 0 };*/
1580 oid um7StatSnmpAgent_oid[] =
1581 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 4, 3, 0 };
1584 * Set the snmpTrapOid.0 value
1586 snmp_varlist_add_variable(&var_list,
1587 snmptrap_oid, OID_LENGTH(snmptrap_oid),
1589 (u_char *) um7StateAlert_oid,
1590 sizeof(um7StateAlert_oid));
1592 struct l7_status *stat = l7ag_store_mibdata::getInstance().getStatmibdata();
1593 /* snmp_varlist_add_variable(&var_list,
1594 um7StatReplication_oid,
1595 OID_LENGTH(um7StatReplication_oid),
1596 ASN_INTEGER, (u_char*) &stat->replication,
1597 sizeof(REPLICATION_MODE_TAG));*/
1598 snmp_varlist_add_variable(&var_list,
1599 um7StatSnmpAgent_oid,
1600 OID_LENGTH(um7StatSnmpAgent_oid),
1601 ASN_INTEGER, (u_char *) &stat->snmpAgent,
1602 sizeof(IPC_STATUS_TAG));
1605 * Add any extra (optional) objects here
1609 * Send the trap to the list of configured destinations
1612 send_v2trap(var_list);
1613 snmp_free_varbind(var_list);
1615 return SNMP_ERR_NOERROR;
1619 send_um7VirtualServiceAlert_trap()
1621 netsnmp_variable_list *var_list = NULL;
1622 oid um7VirtualServiceAlert_oid[] =
1623 { 1, 3, 6, 1, 4, 1, 60000, 0, 2 };
1624 // oid um7VirtualServiceTable_oid[] =
1625 // { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 1, 0 };
1626 // oid um7RealServerTable_oid[] =
1627 // { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 2, 0 };
1630 * Set the snmpTrapOid.0 value
1632 snmp_varlist_add_variable(&var_list,
1633 snmptrap_oid, OID_LENGTH(snmptrap_oid),
1635 (u_char *) um7VirtualServiceAlert_oid,
1636 sizeof(um7VirtualServiceAlert_oid));
1639 * Add any objects from the trap definition
1642 snmp_varlist_add_variable(&var_list,
1643 um7VirtualServiceTable_oid,
1644 OID_LENGTH(um7VirtualServiceTable_oid),,
1645 // Set an appropriate value for um7VirtualServiceTable
1647 snmp_varlist_add_variable(&var_list,
1648 um7RealServerTable_oid,
1649 OID_LENGTH(um7RealServerTable_oid),,
1650 // Set an appropriate value for um7RealServerTable
1655 * Add any extra (optional) objects here
1659 * Send the trap to the list of configured destinations
1662 send_v2trap(var_list);
1663 snmp_free_varbind(var_list);
1665 return SNMP_ERR_NOERROR;
1669 send_um7ReplicationAlert_trap()
1671 netsnmp_variable_list *var_list = NULL;
1672 oid um7ReplicationAlert_oid[] =
1673 { 1, 3, 6, 1, 4, 1, 60000, 0, 3 };
1674 oid um7StatMessage_oid[] =
1675 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 4, 1, 0 };
1678 * Set the snmpTrapOid.0 value
1680 snmp_varlist_add_variable(&var_list,
1681 snmptrap_oid, OID_LENGTH(snmptrap_oid),
1683 (u_char *) um7ReplicationAlert_oid,
1684 sizeof(um7ReplicationAlert_oid));
1686 struct l7_status *stat = l7ag_store_mibdata::getInstance().getStatmibdata();
1687 snmp_varlist_add_variable(&var_list,
1689 OID_LENGTH(um7StatMessage_oid),
1691 (u_char *) &stat->message,
1692 strnlen(stat->message, DISPLAYSTRING_LEN));
1695 * Add any extra (optional) objects here
1699 * Send the trap to the list of configured destinations
1702 send_v2trap(var_list);
1703 snmp_free_varbind(var_list);
1705 return SNMP_ERR_NOERROR;
1709 send_um7LogLevelAlert_trap()
1711 netsnmp_variable_list *var_list = NULL;
1712 oid um7LogLevelAlert_oid[] =
1713 { 1, 3, 6, 1, 4, 1, 60000, 0, 4 };
1714 // oid um7LogLevel_oid[] =
1715 // { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 3, /* insert index here */ };
1718 * Set the snmpTrapOid.0 value
1720 snmp_varlist_add_variable(&var_list,
1721 snmptrap_oid, OID_LENGTH(snmptrap_oid),
1723 (u_char *) um7LogLevelAlert_oid,
1724 sizeof(um7LogLevelAlert_oid));
1727 * Add any objects from the trap definition
1730 snmp_varlist_add_variable(&var_list,
1732 OID_LENGTH(um7LogLevel_oid),,
1733 // Set an appropriate value for um7LogLevel
1738 * Add any extra (optional) objects here
1742 * Send the trap to the list of configured destinations
1745 send_v2trap(var_list);
1746 snmp_free_varbind(var_list);
1748 return SNMP_ERR_NOERROR;
1752 send_um7QoSAlarmOn_trap(size_t index)
1754 netsnmp_variable_list *var_list = NULL;
1755 oid um7QoSAlarmOn_oid[] =
1756 { 1, 3, 6, 1, 4, 1, 60000, 0, 5 };
1757 oid um7VSQoSThresholdUp_oid[] =
1758 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 1, 1, 13, index };
1759 oid um7VSQoSThresholdDown_oid[] =
1760 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 1, 1, 14, index };
1761 oid um7VSThroughputUp_oid[] =
1762 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 1, 1, 15, index };
1763 oid um7VSThroughputDown_oid[] =
1764 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 1, 1, 16, index };
1767 * Set the snmpTrapOid.0 value
1769 snmp_varlist_add_variable(&var_list,
1770 snmptrap_oid, OID_LENGTH(snmptrap_oid),
1772 (u_char *) um7QoSAlarmOn_oid,
1773 sizeof(um7QoSAlarmOn_oid));
1775 vsdata *vs = l7ag_store_mibdata::getInstance().getVSmibdata(index);
1777 snmp_varlist_add_variable(&var_list,
1778 um7VSQoSThresholdUp_oid,
1779 OID_LENGTH(um7VSQoSThresholdUp_oid),
1781 (u_char *) &vs->QoSThresholdUp,
1782 sizeof(unsigned long long));
1783 snmp_varlist_add_variable(&var_list,
1784 um7VSQoSThresholdDown_oid,
1785 OID_LENGTH(um7VSQoSThresholdDown_oid),
1787 (u_char *) &vs->QoSThresholdDown,
1788 sizeof(unsigned long long));
1789 snmp_varlist_add_variable(&var_list,
1790 um7VSThroughputUp_oid,
1791 OID_LENGTH(um7VSThroughputUp_oid),
1793 (u_char *) &vs->throughputUp,
1794 sizeof(unsigned long long));
1795 snmp_varlist_add_variable(&var_list,
1796 um7VSThroughputDown_oid,
1797 OID_LENGTH(um7VSThroughputDown_oid),
1799 (u_char *) &vs->throughputDown,
1800 sizeof(unsigned long long));
1804 * Add any extra (optional) objects here
1808 * Send the trap to the list of configured destinations
1811 send_v2trap(var_list);
1812 snmp_free_varbind(var_list);
1814 return SNMP_ERR_NOERROR;
1818 send_um7QoSAlarmOff_trap(size_t index)
1820 netsnmp_variable_list *var_list = NULL;
1821 oid um7QoSAlarmOff_oid[] =
1822 { 1, 3, 6, 1, 4, 1, 60000, 0, 6 };
1823 oid um7VSQoSThresholdUp_oid[] =
1824 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 1, 1, 13, index };
1825 oid um7VSQoSThresholdDown_oid[] =
1826 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 1, 1, 14, index };
1827 oid um7VSThroughputUp_oid[] =
1828 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 1, 1, 15, index };
1829 oid um7VSThroughputDown_oid[] =
1830 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 1, 1, 16, index };
1833 * Set the snmpTrapOid.0 value
1835 snmp_varlist_add_variable(&var_list,
1836 snmptrap_oid, OID_LENGTH(snmptrap_oid),
1838 (u_char *) um7QoSAlarmOff_oid,
1839 sizeof(um7QoSAlarmOff_oid));
1841 vsdata *vs = l7ag_store_mibdata::getInstance().getVSmibdata(index);
1843 snmp_varlist_add_variable(&var_list,
1844 um7VSQoSThresholdUp_oid,
1845 OID_LENGTH(um7VSQoSThresholdUp_oid),
1847 (u_char *) &vs->QoSThresholdUp,
1848 sizeof(unsigned long long));
1849 snmp_varlist_add_variable(&var_list,
1850 um7VSQoSThresholdDown_oid,
1851 OID_LENGTH(um7VSQoSThresholdDown_oid),
1853 (u_char *) &vs->QoSThresholdDown,
1854 sizeof(unsigned long long));
1855 snmp_varlist_add_variable(&var_list,
1856 um7VSThroughputUp_oid,
1857 OID_LENGTH(um7VSThroughputUp_oid),
1859 (u_char *) &vs->throughputUp,
1860 sizeof(unsigned long long));
1861 snmp_varlist_add_variable(&var_list,
1862 um7VSThroughputDown_oid,
1863 OID_LENGTH(um7VSThroughputDown_oid),
1865 (u_char *) &vs->throughputDown,
1866 sizeof(unsigned long long));
1870 * Add any extra (optional) objects here
1874 * Send the trap to the list of configured destinations
1877 send_v2trap(var_list);
1878 snmp_free_varbind(var_list);
1880 return SNMP_ERR_NOERROR;
1884 send_um7MessageAlert_trap()
1886 netsnmp_variable_list *var_list = NULL;
1887 oid um7MessageAlert_oid[] =
1888 { 1, 3, 6, 1, 4, 1, 60000, 0, 7 };
1889 oid um7StatMessage_oid[] =
1890 { 1, 3, 6, 1, 4, 1, 60000, 1, 1, 4, 1, 0 };
1893 * Set the snmpTrapOid.0 value
1895 snmp_varlist_add_variable(&var_list,
1896 snmptrap_oid, OID_LENGTH(snmptrap_oid),
1898 (u_char *) um7MessageAlert_oid,
1899 sizeof(um7MessageAlert_oid));
1901 struct l7_status *stat = l7ag_store_mibdata::getInstance().getStatmibdata();
1902 snmp_varlist_add_variable(&var_list,
1904 OID_LENGTH(um7StatMessage_oid),
1906 (u_char *) &stat->message,
1907 strnlen(stat->message, DISPLAYSTRING_LEN));
1910 * Add any extra (optional) objects here
1914 * Send the trap to the list of configured destinations
1917 send_v2trap(var_list);
1918 snmp_free_varbind(var_list);
1920 return SNMP_ERR_NOERROR;
1923 // get all mib data from l7vsd
1924 // called every REPEAT_SEC sec.
1926 getL7vsdData(unsigned int clientreg, void *clientarg)
1928 if (!clientarg) return;
1929 MessengerClient *message = (MessengerClient *) clientarg;
1931 long long buf_size = sizeof(struct l7ag_message_header)
1932 + sizeof(struct l7ag_payload_header)
1933 + sizeof(struct l7ag_mibrequest_message);
1934 char *sendbuf = (char *) calloc(1, buf_size);
1936 struct l7ag_message_header *msg_head = (struct l7ag_message_header *) sendbuf;
1937 msg_head->magic[0] = 0x4d; // M
1938 msg_head->magic[1] = 0x47; // G
1939 msg_head->version = 1;
1940 msg_head->size = buf_size;
1941 msg_head->payload_count = 1;
1942 // TODO set time msg_head->time = 1;
1944 struct l7ag_payload_header *payload = (struct l7ag_payload_header *)(msg_head + 1);
1945 payload->magic[0] = 0x50; // P
1946 payload->magic[1] = 0x59; // Y
1947 payload->message_id = MESSAGE_ID_MIBCOLLECTREQUEST;
1948 payload->payload_datasize = sizeof(struct l7ag_payload_header)
1949 + sizeof(struct l7ag_mibrequest_message);
1951 struct l7ag_mibrequest_message *request = (struct l7ag_mibrequest_message *)(payload + 1);
1952 memset(request, 0, sizeof(struct l7ag_mibrequest_message));
1953 request->magic[0] = 0x52; // R
1954 request->magic[1] = 0x51; // Q
1956 if (message->connect()) {
1957 int ret = message->send(buf_size, sendbuf);
1958 if (ret != buf_size) {