From a0b769e85d6b8bdccd10e4e24936fbd41fa83bb0 Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Sun, 20 Nov 2016 11:49:14 +0100 Subject: [PATCH] bsnmpd: pluginify --- src/etc/inc/services.inc | 177 +------------------------------------- src/etc/rc.bootup | 3 - src/etc/rc.newwanip | 2 +- src/www/interfaces.php | 2 +- src/www/services_snmp.php | 6 +- 5 files changed, 5 insertions(+), 185 deletions(-) diff --git a/src/etc/inc/services.inc b/src/etc/inc/services.inc index c496ef541..47c5dcab6 100644 --- a/src/etc/inc/services.inc +++ b/src/etc/inc/services.inc @@ -39,6 +39,7 @@ * files. Maybe eventually this will change... */ require_once('dyndns.class'); +require_once('plugins.inc.d/bsnmpd.inc'); require_once('plugins.inc.d/dnsmasq.inc'); require_once('plugins.inc.d/relayd.inc'); require_once('plugins.inc.d/unbound.inc'); @@ -1736,172 +1737,6 @@ function dyndnsCheckIP($int) return $ip_address; } -function services_snmpd_configure($verbose = false) -{ - global $config, $g; - - killbypid('/var/run/snmpd.pid', 'TERM', true); - - if (!isset($config['snmpd']['enable'])) { - return; - } - - if ($verbose) { - echo 'Starting SNMP daemon....'; - flush(); - } - - /* generate snmpd.conf */ - $fd = fopen("/var/etc/snmpd.conf", "w"); - if (!$fd) { - log_error('Cannot open snmpd.conf in services_snmpd_configure()'); - return; - } - - $snmpdconf = << 0)) { $pconfig = array(); $pconfig['name'] = "igmpproxy"; diff --git a/src/etc/rc.bootup b/src/etc/rc.bootup index d8ec2cb63..6f18c3272 100755 --- a/src/etc/rc.bootup +++ b/src/etc/rc.bootup @@ -199,9 +199,6 @@ if (function_exists('plugins_configure')) { /* start IPsec tunnels */ $ipsec_dynamic_hosts = ipsec_configure(); -/* start SNMP service */ -services_snmpd_configure(true); - /* load graphing functions */ enable_rrd_graphing(true); diff --git a/src/etc/rc.newwanip b/src/etc/rc.newwanip index b4a21df5b..91ebe8b82 100755 --- a/src/etc/rc.newwanip +++ b/src/etc/rc.newwanip @@ -215,7 +215,7 @@ if (!is_ipaddr($oldip) || $curwanip != $oldip || !is_ipaddrv4($config['interface services_igmpproxy_configure(); /* restart snmp */ - services_snmpd_configure(); + bsnmpd_configure_do(); /* reconfigure ntpd */ system_ntp_configure(false); diff --git a/src/www/interfaces.php b/src/www/interfaces.php index 92e5a4a1e..a3b6e0dde 100644 --- a/src/www/interfaces.php +++ b/src/www/interfaces.php @@ -524,7 +524,7 @@ if ($_SERVER['REQUEST_METHOD'] === 'GET') { } } /* restart snmp so that it binds to correct address */ - services_snmpd_configure(); + bsnmpd_configure_do(); /* sync filter configuration */ setup_gateways_monitor(); filter_configure(); diff --git a/src/www/services_snmp.php b/src/www/services_snmp.php index 15238f526..393e5d110 100644 --- a/src/www/services_snmp.php +++ b/src/www/services_snmp.php @@ -115,19 +115,17 @@ if ($_SERVER['REQUEST_METHOD'] === 'GET') { $config['snmpd'] = $snmp; // save and apply write_config(); - services_snmpd_configure(); - get_std_save_message(); + bsnmpd_configure_do(); header(url_safe('Location: /services_snmp.php')); exit; } } - $service_hook = 'bsnmpd'; legacy_html_escape_form_data($pconfig); include("head.inc"); -?> +?>