lldpd: only use snmp options when compiled in
authorStephen Howell <howels@allthatwemight.be>
Sat, 3 Feb 2024 13:51:49 +0000 (13:51 +0000)
committerStijn Tintel <stijn@linux-ipv6.be>
Thu, 8 Feb 2024 10:35:37 +0000 (12:35 +0200)
prevent SNMP options being passed unless lldpd supports them

Signed-off-by: Stephen Howell <howels@allthatwemight.be>
package/network/services/lldpd/Makefile
package/network/services/lldpd/files/lldpd.init

index fa4143c713ae9a9a7cd1c4fc80ae74a8ee17d526..bd01077b66697e12cd8f38cad7ab58b4f982c974 100644 (file)
@@ -83,7 +83,8 @@ ifneq ($(CONFIG_LLDPD_WITH_SONMP),y)
        sed -i -e '/sonmp/d' $(1)/etc/config/lldpd
 endif
 ifneq ($(CONFIG_LLDPD_WITH_SNMP),y)
-       sed -i -e '/agentxsocket/d' $(1)/etc/init.d/lldpd $(1)/etc/config/lldpd
+       sed -i -e 's/CONFIG_LLDPD_WITH_SNMP=y/CONFIG_LLDPD_WITH_SNMP=n/g' $(1)/etc/init.d/lldpd
+       sed -i -e '/agentxsocket/d' $(1)/etc/config/lldpd
 endif
 ifneq ($(CONFIG_LLDPD_WITH_LLDPMED),y)
        sed -i -e 's/CONFIG_LLDPD_WITH_LLDPMED=y/CONFIG_LLDPD_WITH_LLDPMED=n/g' $(1)/etc/init.d/lldpd
index b69ec16086732431e8eb41aa17d2eec8880b6b87..98769688ecf8b86c59394dac8363baac4b95da89 100644 (file)
@@ -7,6 +7,7 @@ STOP=01
 CONFIG_LLDPD_WITH_CDP=y
 CONFIG_LLDPD_WITH_FDP=y
 CONFIG_LLDPD_WITH_LLDPMED=y
+CONFIG_LLDPD_WITH_SNMP=y
 CONFIG_LLDPD_WITH_SONMP=y
 
 USE_PROCD=1
@@ -37,7 +38,9 @@ get_config_restart_hash() {
        config_load 'lldpd'
 
        config_get      v 'config' 'lldp_class'; append _string "$v" ","
-       config_get      v 'config' 'agentxsocket'; append _string "$v" ","
+       if [ "$CONFIG_LLDPD_WITH_SNMP" == "y" ]; then
+               config_get      v 'config' 'agentxsocket'; append _string "$v" ","
+       fi
        config_get      v 'config' 'cid_interface'; append _string "$v" ","
        config_get      v 'config' 'filter'; append _string "$v" ","
        config_get_bool v 'config' 'readonly_mode'; append _string "$v" ","
@@ -201,7 +204,9 @@ start_service() {
                config_get_bool lldpmed_no_inventory 'config' 'lldpmed_no_inventory' 0
        fi
        config_get_bool readonly_mode 'config' 'readonly_mode' 0
-       config_get agentxsocket 'config' 'agentxsocket'
+       if [ "$CONFIG_LLDPD_WITH_SNMP" == "y" ]; then
+               config_get agentxsocket 'config' 'agentxsocket'
+       fi
        config_get filter 'config' 'filter' 15
 
        mkdir -p ${LLDPD_RUN}
@@ -272,7 +277,7 @@ start_service() {
        [ $lldp_no_version -gt 0 ] && procd_append_param commanpackage/network/services/lldpd/Makefile package/network/services/lldpd/files/lldpd.initd '-k'
        [ "$CONFIG_LLDPD_WITH_LLDPMED" == "y" ] && [ $lldpmed_no_inventory -gt 0 ] && procd_append_param command '-i'
        [ -n "$lldp_class" ] && procd_append_param command -M "$lldp_class"
-       [ -n "$agentxsocket" ] && procd_append_param command -x -X "$agentxsocket"
+       [ "$CONFIG_LLDPD_WITH_SNMP" == "y" ] && [ -n "$agentxsocket" ] && procd_append_param command -x -X "$agentxsocket"
        [ -n "$filter" ] && procd_append_param command -H "$filter"
 
     # ChassisID interfaces