diff options
author | Stijn Tintel <stijn@linux-ipv6.be> | 2017-01-05 13:05:57 +0100 |
---|---|---|
committer | Stijn Tintel <stijn@linux-ipv6.be> | 2017-01-10 13:02:00 +0100 |
commit | 046606a05eaece636dae1565fd1445b02a37d940 (patch) | |
tree | feea24eaf40954f1e6282cbb4f1b34f92ce30fe5 | |
parent | 0d3dc169316616103dc30252c9aae4de27ab3d50 (diff) | |
download | upstream-046606a05eaece636dae1565fd1445b02a37d940.tar.gz upstream-046606a05eaece636dae1565fd1445b02a37d940.tar.bz2 upstream-046606a05eaece636dae1565fd1445b02a37d940.zip |
lldpd: add Net-SNMP AgentX support
Enabling this makes it possible to query LLDP neighbors via SNMP.
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Acked-by: Jo-Philipp Wich <jo@mein.io>
-rw-r--r-- | package/network/services/lldpd/Config.in | 4 | ||||
-rw-r--r-- | package/network/services/lldpd/Makefile | 8 | ||||
-rw-r--r-- | package/network/services/lldpd/files/lldpd.config | 2 | ||||
-rw-r--r-- | package/network/services/lldpd/files/lldpd.init | 3 |
4 files changed, 15 insertions, 2 deletions
diff --git a/package/network/services/lldpd/Config.in b/package/network/services/lldpd/Config.in index 93d84e29ea..ec6990a76c 100644 --- a/package/network/services/lldpd/Config.in +++ b/package/network/services/lldpd/Config.in @@ -51,4 +51,8 @@ config LLDPD_WITH_JSON prompt "Enable JSON output for the LLDP Command-Line Interface" default n +config LLDPD_WITH_SNMP + bool + default n + prompt "Enable the use of SNMP" endmenu diff --git a/package/network/services/lldpd/Makefile b/package/network/services/lldpd/Makefile index 3579e53e02..74169a1c4c 100644 --- a/package/network/services/lldpd/Makefile +++ b/package/network/services/lldpd/Makefile @@ -31,7 +31,7 @@ define Package/lldpd SUBMENU:=Routing and Redirection TITLE:=Link Layer Discovery Protocol daemon URL:=https://github.com/vincentbernat/lldpd/wiki - DEPENDS:=+libevent2 +USE_GLIBC:libbsd +LLDPD_WITH_JSON:libjson-c + DEPENDS:=+libevent2 +USE_GLIBC:libbsd +LLDPD_WITH_JSON:libjson-c +LLDPD_WITH_SNMP:libnetsnmp USERID:=lldp=121:lldp=129 MENU:=1 endef @@ -78,6 +78,9 @@ endif ifneq ($(CONFIG_LLDPD_WITH_SONMP),y) sed -i -e '/sonmp/d' $(1)/etc/init.d/lldpd $(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 +endif endef define Package/lldpd/conffiles @@ -103,7 +106,8 @@ CONFIGURE_ARGS += \ $(if $(CONFIG_LLDPD_WITH_DOT3),,--disable-dot3) \ $(if $(CONFIG_LLDPD_WITH_CUSTOM),,--disable-custom) \ $(if $(CONFIG_LLDPD_WITH_SONMP),,--disable-sonmp) \ - $(if $(CONFIG_LLDPD_WITH_JSON),--with-json=json-c,--with-json=no) + $(if $(CONFIG_LLDPD_WITH_JSON),--with-json=json-c,--with-json=no) \ + $(if $(CONFIG_LLDPD_WITH_SNMP),--with-snmp,) $(eval $(call BuildPackage,lldpd)) diff --git a/package/network/services/lldpd/files/lldpd.config b/package/network/services/lldpd/files/lldpd.config index 92ab42116b..d2b3d15450 100644 --- a/package/network/services/lldpd/files/lldpd.config +++ b/package/network/services/lldpd/files/lldpd.config @@ -3,6 +3,8 @@ config lldpd config option enable_fdp 1 option enable_sonmp 1 option enable_edp 1 + + option agentxsocket /var/run/agentx.sock option lldp_class 4 option lldp_location "2:FR:6:Commercial Rd:3:Roseville:19:4" diff --git a/package/network/services/lldpd/files/lldpd.init b/package/network/services/lldpd/files/lldpd.init index 4e9efcae0d..4495551567 100644 --- a/package/network/services/lldpd/files/lldpd.init +++ b/package/network/services/lldpd/files/lldpd.init @@ -57,6 +57,7 @@ start_service() { local lldp_class local lldp_location local readonly_mode + local agentxsocket config_load 'lldpd' config_get_bool enable_cdp 'config' 'enable_cdp' 0 @@ -66,6 +67,7 @@ start_service() { config_get lldp_class 'config' 'lldp_class' config_get lldp_location 'config' 'lldp_location' config_get_bool readonly_mode 'config' 'readonly_mode' 0 + config_get agentxsocket 'config' 'agentxsocket' mkdir -p /var/run/lldp chown lldp:lldp /var/run/lldp @@ -83,6 +85,7 @@ start_service() { [ $enable_edp -gt 0 ] && procd_append_param command '-e' [ $readonly_mode -gt 0 ] && procd_append_param command '-r' [ -n "$lldp_class" ] && procd_append_param command -M "$lldp_class" + [ -n "$agentxsocket" ] && procd_append_param command -x -X "$agentxsocket" # set auto respawn behavior procd_set_param respawn |