Revision dc6a9ddc
Added by Viktor Gurov over 3 years ago
src/etc/inc/services.inc | ||
---|---|---|
2731 | 2731 |
return $return; |
2732 | 2732 |
} |
2733 | 2733 |
|
2734 |
function services_snmpd_configure() { |
|
2734 |
function services_snmpd_configure($interface='') {
|
|
2735 | 2735 |
global $config, $g; |
2736 | 2736 |
if (isset($config['system']['developerspew'])) { |
2737 | 2737 |
$mt = microtime(); |
2738 | 2738 |
echo "services_snmpd_configure() being called $mt\n"; |
2739 | 2739 |
} |
2740 | 2740 |
|
2741 |
if (!empty($interface) && |
|
2742 |
!empty($config['snmpd']['bindip']) && |
|
2743 |
isset($config['snmpd']['enable'])) { |
|
2744 |
foreach (explode(",", $config['snmpd']['bindip']) as $bind_to_ip) { |
|
2745 |
if ($bind_to_ip == $interface) { |
|
2746 |
$interface_restart = true; |
|
2747 |
break; |
|
2748 |
} |
|
2749 |
} |
|
2750 |
if (!$interface_restart) { |
|
2751 |
return 0; |
|
2752 |
} |
|
2753 |
} |
|
2754 |
|
|
2741 | 2755 |
/* kill any running snmpd */ |
2742 | 2756 |
sigkillbypid("{$g['varrun_path']}/snmpd.pid", "TERM"); |
2743 | 2757 |
sleep(2); |
src/etc/rc.newwanip | ||
---|---|---|
268 | 268 |
services_igmpproxy_configure($interface); |
269 | 269 |
|
270 | 270 |
/* restart snmp */ |
271 |
services_snmpd_configure(); |
|
271 |
services_snmpd_configure($interface);
|
|
272 | 272 |
|
273 | 273 |
restart_packages(); |
274 | 274 |
|
src/usr/local/www/interfaces.php | ||
---|---|---|
506 | 506 |
} |
507 | 507 |
|
508 | 508 |
/* restart snmp so that it binds to correct address */ |
509 |
$retval |= services_snmpd_configure(); |
|
509 |
$retval |= services_snmpd_configure($ifapply);
|
|
510 | 510 |
|
511 | 511 |
/* sync filter configuration */ |
512 | 512 |
setup_gateways_monitor(); |
Also available in: Unified diff
SNMP service restart improvements. Fixes #12611