From: Alexandru Ardelean Date: Tue, 5 Jan 2016 07:40:22 +0000 (+0200) Subject: lldpd: freeze execution of lldpd during reload X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=b7fadb12b76a471d66dfd3266ad0af2177914057;p=openwrt%2Fstaging%2Fadrian.git lldpd: freeze execution of lldpd during reload During reload, we could send invalid information to the other side and confuse it. That's why, during reload we'll pause execution, do the reconfig and resume + update when reload is done. Signed-off-by: Alexandru Ardelean --- diff --git a/package/network/services/lldpd/files/lldpd.init b/package/network/services/lldpd/files/lldpd.init index 8fe0a47cdc..4e9efcae0d 100644 --- a/package/network/services/lldpd/files/lldpd.init +++ b/package/network/services/lldpd/files/lldpd.init @@ -99,6 +99,7 @@ service_running() { reload_service() { running || return 1 $LLDPCLI -u $LLDPSOCKET &> /dev/null <<-EOF + pause unconfigure lldp custom-tlv unconfigure system interface pattern unconfigure system description @@ -108,7 +109,10 @@ reload_service() { write_lldpd_conf $LLDPCLI -u $LLDPSOCKET -c $LLDPD_CONF -c $LLDPD_CONFS_DIR &> /dev/null # Broadcast update over the wire - $LLDPCLI -u $LLDPSOCKET update &> /dev/null + $LLDPCLI -u $LLDPSOCKET &> /dev/null <<-EOF + resume + update + EOF return 0 }