diff --git a/rootconf/default/etc/init.d/discover.sh b/rootconf/default/etc/init.d/discover.sh index e9e54c341..f93b8fbd6 100755 --- a/rootconf/default/etc/init.d/discover.sh +++ b/rootconf/default/etc/init.d/discover.sh @@ -78,6 +78,7 @@ do_stop() { log_begin_msg "Stopping: $daemon" start-stop-daemon -q -K -s TERM -p /var/run/${daemon}.pid killall -q $onie_installer exec_installer wget tftp + pkill -P $(cat /var/run/${daemon}.pid) log_end_msg } diff --git a/rootconf/default/etc/init.d/networking.sh b/rootconf/default/etc/init.d/networking.sh index 8c8d0e000..832aab581 100755 --- a/rootconf/default/etc/init.d/networking.sh +++ b/rootconf/default/etc/init.d/networking.sh @@ -84,6 +84,12 @@ config_ethmgmt_fallback() local intf=$1 shift + local ipaddr=$(ifconfig $intf |grep 'inet '|sed -e 's/:/ /g'|awk '{ print $3 " / " $7 }') + if [ -n "$ipaddr" ] ; then + log_console_msg "Found already assigned IP address $ipaddr to $intf" + return 0 + fi + # Remove any previously configured, IPv4 addresses ip -f inet addr flush dev $intf