From c73487302270a7c2d3bbbb191ce1dd63ee2016dc Mon Sep 17 00:00:00 2001 From: Jukka Rissanen Date: Fri, 6 Sep 2013 10:23:00 +0300 Subject: [PATCH] connman: Ignore the NFS root network interface in init script The connman init.d script tried to ignore all the network interfaces if NFS root is configured. We should only ignore the interface that is used by NFS root. [YOCTO #4587] (From OE-Core rev: 1838671b832015ae28c8c101e8b20afbbf4b3c98) Signed-off-by: Jukka Rissanen Signed-off-by: Richard Purdie --- meta/recipes-connectivity/connman/connman/connman | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/meta/recipes-connectivity/connman/connman/connman b/meta/recipes-connectivity/connman/connman/connman index 67ba7c8a2a..2625adeead 100644 --- a/meta/recipes-connectivity/connman/connman/connman +++ b/meta/recipes-connectivity/connman/connman/connman @@ -29,8 +29,18 @@ done do_start() { EXTRA_PARAM="" if test $nfsroot -eq 1 ; then - ethn=`ifconfig | grep eth | sed -e "s/\(eth[0-9]\)\(.*\)/\1/"` - EXTRA_PARAM="-I $ethn" + NET_DEVS=`cat /proc/net/dev | sed -ne 's/^\([a-zA-Z0-9 ]*\):.*$/\1/p'` + NET_ADDR=`cat /proc/cmdline | sed -ne 's/^.*ip=\([^ ]*\):.*$/\1/p'` + + if [ x$NET_ADDR != x ]; then + for i in $NET_DEVS; do + ADDR=`ifconfig $i | sed 's/addr://g' | sed -ne 's/^.*inet \([0-9.]*\) .*$/\1/p'` + if [ "$NET_ADDR" = "$ADDR" ]; then + EXTRA_PARAM="-I $i" + break + fi + done + fi fi if [ -f @LIBDIR@/connman/wired-setup ] ; then . @LIBDIR@/connman/wired-setup