STOP=01
CONFIG_LLDPD_WITH_CDP=y
+CONFIG_LLDPD_WITH_EDP=y
CONFIG_LLDPD_WITH_FDP=y
CONFIG_LLDPD_WITH_LLDPMED=y
+CONFIG_LLDPD_WITH_SNMP=y
CONFIG_LLDPD_WITH_SONMP=y
USE_PROCD=1
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" ","
config_get_bool v 'config' 'force_cdp'; append _string "$v" ","
config_get_bool v 'config' 'force_cdpv2'; append _string "$v" ","
fi
- config_get_bool v 'config' 'enable_edp'; append _string "$v" ","
+ if [ "$CONFIG_LLDPD_WITH_EDP" == "y" ]; then
+ config_get_bool v 'config' 'enable_edp'; append _string "$v" ","
+ config_get_bool v 'config' 'force_edp'; append _string "$v" ","
+ fi
if [ "$CONFIG_LLDPD_WITH_FDP" == "y" ]; then
config_get_bool v 'config' 'enable_fdp'; append _string "$v" ","
config_get_bool v 'config' 'force_fdp'; append _string "$v" ","
local lldp_portidsubtype
config_get lldp_portidsubtype 'config' 'lldp_portidsubtype' 'macaddress'
+ local lldp_platform
+ config_get lldp_platform 'config' 'lldp_platform' ""
+
+ local lldp_tx_interval
+ config_get lldp_tx_interval 'config' 'lldp_tx_interval' 0
+
+ local lldp_tx_hold
+ config_get lldp_tx_hold 'config' 'lldp_tx_hold' 0
+
# Clear out the config file first
echo -n > "$LLDPD_CONF"
[ -n "$ifnames" ] && echo "configure system interface pattern" "$ifnames" >> "$LLDPD_CONF"
fi
[ -n "$lldp_agenttype" ] && echo "configure lldp agent-type" "\"$lldp_agenttype\"" >> "$LLDPD_CONF"
[ -n "$lldp_portidsubtype" ] && echo "configure lldp portidsubtype" "\"$lldp_portidsubtype\"" >> "$LLDPD_CONF"
+ [ -n "$lldp_platform" ] && echo "configure system platform" "\"$lldp_platform\"" >> "$LLDPD_CONF"
+ [ $lldp_tx_interval -gt 0 ] && echo "configure lldp tx-interval" "$lldp_tx_interval" >> "$LLDPD_CONF"
+ [ $lldp_tx_hold -gt 0 ] && echo "configure lldp tx-hold" "$lldp_tx_hold" >> "$LLDPD_CONF"
# Since lldpd's sysconfdir is /tmp, we'll symlink /etc/lldpd.d to /tmp/$LLDPD_CONFS_DIR
[ -e $LLDPD_CONFS_DIR ] || ln -s /etc/lldpd.d $LLDPD_CONFS_DIR
local enable_sonmp
local force_sonmp
local enable_edp
+ local force_edp
local lldp_class
local lldp_location
local lldp_no_version
config_get_bool enable_sonmp 'config' 'enable_sonmp' 0
config_get_bool force_sonmp 'config' 'force_sonmp' 0
fi
- config_get_bool enable_edp 'config' 'enable_edp' 0
+ if [ "$CONFIG_LLDPD_WITH_EDP" == "y" ]; then
+ config_get_bool enable_edp 'config' 'enable_edp' 0
+ config_get_bool force_edp 'config' 'force_edp' 0
+ fi
config_get lldp_class 'config' 'lldp_class'
config_get lldp_location 'config' 'lldp_location'
config_get_bool lldp_no_version 'config' 'lldp_no_version' 0
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}
if [ "$CONFIG_LLDPD_WITH_FDP" == "y" ] && [ $enable_fdp -gt 0 ]; then
if [ $force_fdp -gt 0 ]; then
- # FDP enbled and forced
+ # FDP enabled and forced
procd_append_param command '-ff'
else
# FDP enabled
fi
fi
- [ $enable_edp -gt 0 ] && procd_append_param command '-e'
+ if [ "$CONFIG_LLDPD_WITH_EDP" == "y" ] && [ $enable_edp -gt 0 ]; then
+ if [ $force_edp -gt 0 ]; then
+ # EDP enabled and forced
+ procd_append_param command '-ee'
+ else
+ # EDP enabled
+ procd_append_param command '-e'
+ fi
+ fi
[ $readonly_mode -gt 0 ] && procd_append_param command '-r'
- [ $lldp_no_version -gt 0 ] && procd_append_param commanpackage/network/services/lldpd/Makefile package/network/services/lldpd/files/lldpd.initd '-k'
+ [ $lldp_no_version -gt 0 ] && procd_append_param command '-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
unconfigure system description
unconfigure system hostname
unconfigure system ip management pattern
+ unconfigure system platform
EOF
if [ "$CONFIG_LLDPD_WITH_LLDPMED" == "y" ]; then
$LLDPCLI -u $LLDPSOCKET &> /dev/null <<-EOF