aboutsummaryrefslogtreecommitdiff
path: root/src/varnish_mib.mib2c
diff options
context:
space:
mode:
Diffstat (limited to 'src/varnish_mib.mib2c')
-rw-r--r--src/varnish_mib.mib2c39
1 files changed, 29 insertions, 10 deletions
diff --git a/src/varnish_mib.mib2c b/src/varnish_mib.mib2c
index a5367e0..9d49ce9 100644
--- a/src/varnish_mib.mib2c
+++ b/src/varnish_mib.mib2c
@@ -1,5 +1,5 @@
1# This file is part of varnish-mib -*- c -*- 1# This file is part of varnish-mib -*- c -*-
2# Copyright (C) 2014-2015 Sergey Poznyakoff 2# Copyright (C) 2014-2016 Sergey Poznyakoff
3# 3#
4# Varnish-mib is free software; you can redistribute it and/or modify 4# Varnish-mib is free software; you can redistribute it and/or modify
5# it under the terms of the GNU General Public License as published by 5# it under the terms of the GNU General Public License as published by
@@ -24,9 +24,7 @@
24*/ 24*/
25@enddefine@ 25@enddefine@
26@startperl@ 26@startperl@
27$vars{'varnish_translate'} = sub { 27$vars{'varnish_translate_table'} = {
28 my $name = shift;
29 my %trans = (
30 uptime => [ 'MAIN', 'uptime' ], 28 uptime => [ 'MAIN', 'uptime' ],
31 clientAcceptedConnections => [ 'MAIN', 'sess_conn' ], 29 clientAcceptedConnections => [ 'MAIN', 'sess_conn' ],
32 clientRequestsReceived => [ 'MAIN', 'client_req' ], 30 clientRequestsReceived => [ 'MAIN', 'client_req' ],
@@ -102,9 +100,12 @@ $vars{'varnish_translate'} = sub {
102 bansPersistedBytes => [ 'MAIN', 'bans_persisted_bytes' ], 100 bansPersistedBytes => [ 'MAIN', 'bans_persisted_bytes' ],
103 bansPersistedFragmentation => [ 'MAIN', 'bans_persisted_fragmentation' ], 101 bansPersistedFragmentation => [ 'MAIN', 'bans_persisted_fragmentation' ],
104 102
105 ); 103};
104
105$vars{'varnish_translate'} = sub {
106 my $name = shift;
106 107
107 my $r = $trans{$name}; 108 my $r = $vars{'varnish_translate_table'}->{$name};
108 if (!defined($r)) { 109 if (!defined($r)) {
109 print STDERR "no translation for $name!\n"; 110 print STDERR "no translation for $name!\n";
110 exit(1); 111 exit(1);
@@ -117,6 +118,13 @@ $vars{'varnish_translate'} = sub {
117 } else { 118 } else {
118 delete $vars{$setkw}; 119 delete $vars{$setkw};
119 } 120 }
121 if ($vars{'varnish_type'} eq 'MAIN') {
122 $vars{'varnish_if'} = "#if HAVE_STRUCT_VSC_C_MAIN_" . uc($vars{'varnish_member'});
123 $vars{'varnish_endif'} = '#endif';
124 } else {
125 delete $vars{'varnish_if'};
126 delete $vars{'varnish_endif'}
127 }
120 return 0; 128 return 0;
121}; 129};
122 130
@@ -224,6 +232,10 @@ varnish_get_vsm_data()
224*/ 232*/
225 233
226@foreach $i scalar@ 234@foreach $i scalar@
235 @startperl@
236 &{$vars{'varnish_translate'}}($vars{'i'});
237 @endperl@
238$varnish_if
227static int 239static int
228handle_$i(netsnmp_mib_handler *handler, 240handle_$i(netsnmp_mib_handler *handler,
229 netsnmp_handler_registration *reginfo, 241 netsnmp_handler_registration *reginfo,
@@ -234,10 +246,6 @@ handle_$i(netsnmp_mib_handler *handler,
234 int ret; 246 int ret;
235 @end@ 247 @end@
236 248
237 @startperl@
238 &{$vars{'varnish_translate'}}($vars{'i'});
239 @endperl@
240
241 if (!varnish_get_vsm_data()) 249 if (!varnish_get_vsm_data())
242 return SNMP_ERR_NOSUCHNAME; 250 return SNMP_ERR_NOSUCHNAME;
243 251
@@ -359,6 +367,7 @@ handle_$i(netsnmp_mib_handler *handler,
359 367
360 return SNMP_ERR_NOERROR; 368 return SNMP_ERR_NOERROR;
361} 369}
370$varnish_endif
362@end@ 371@end@
363 372
364@foreach $i table@ 373@foreach $i table@
@@ -543,7 +552,12 @@ void
543init_$modulename(void) 552init_$modulename(void)
544{ 553{
545 @foreach $i scalar@ 554 @foreach $i scalar@
555 @startperl@
556 &{$vars{'varnish_translate'}}($vars{'i'});
557 @endperl@
558$varnish_if
546 const oid ${i}_oid[] = { $i.commaoid }; 559 const oid ${i}_oid[] = { $i.commaoid };
560$varnish_endif
547 @end@ 561 @end@
548 562
549 DEBUGMSGTL(("$modulename", "Initializing\n")); 563 DEBUGMSGTL(("$modulename", "Initializing\n"));
@@ -567,6 +581,10 @@ init_$modulename(void)
567 snmp_log(LOG_ERR,"can't register config handler\n"); 581 snmp_log(LOG_ERR,"can't register config handler\n");
568 582
569 @foreach $i scalar@ 583 @foreach $i scalar@
584 @startperl@
585 &{$vars{'varnish_translate'}}($vars{'i'});
586 @endperl@
587$varnish_if
570 netsnmp_register_scalar( 588 netsnmp_register_scalar(
571 netsnmp_create_handler_registration("$i", handle_$i, 589 netsnmp_create_handler_registration("$i", handle_$i,
572 ${i}_oid, OID_LENGTH(${i}_oid), 590 ${i}_oid, OID_LENGTH(${i}_oid),
@@ -577,6 +595,7 @@ init_$modulename(void)
577 HANDLER_CAN_RWRITE 595 HANDLER_CAN_RWRITE
578 @end@ 596 @end@
579 )); 597 ));
598$varnish_endif
580 @end@ 599 @end@
581 @foreach $i table@ 600 @foreach $i table@
582 initialize_table_$i(); 601 initialize_table_$i();

Return to:

Send suggestions and report system problems to the System administrator.