net-snmp: reload snmpd on interface events 2397/head
authorStijn Tintel <stijn@linux-ipv6.be>
Sat, 20 Feb 2016 15:29:28 +0000 (16:29 +0100)
committerStijn Tintel <stijn@linux-ipv6.be>
Sat, 20 Feb 2016 15:46:17 +0000 (16:46 +0100)
When applying wireless configuration changes, the ifindex of the
wireless interface(s) change. While snmpd picks up the new interfaces
with the correct index, it does not remove the old ones:

IF-MIB::ifName.23 = STRING: wlan0
IF-MIB::ifName.24 = STRING: wlan1
IF-MIB::ifName.25 = STRING: wlan0
IF-MIB::ifName.26 = STRING: wlan1

This causes problems for monitoring tools that use ifName (or ifDesc) as
interface reference. Add a trigger that reloads snmpd on interface
up/down events so that it will no longer have the old interfaces.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
net/net-snmp/files/snmpd.init

index 000a992d48f5263097a2c3777d512bf028e0b49f..ff780975de8ed62994e4acba13b6afd21ec848ec 100644 (file)
@@ -230,5 +230,12 @@ stop_service() {
 }
 
 service_triggers(){
+       local script=$(readlink "$initscript")
+       local name=$(basename ${script:-$initscript})
+
+       procd_open_trigger
+       procd_add_raw_trigger "interface.*" 2000 /etc/init.d/$name reload
+       procd_close_trigger
+
        procd_add_reload_trigger 'snmpd'
 }