diff --git a/package/base/sysfiles/ifup.sh b/package/base/sysfiles/ifup.sh index 3b53eaf38..3be9a087d 100644 --- a/package/base/sysfiles/ifup.sh +++ b/package/base/sysfiles/ifup.sh @@ -13,5 +13,6 @@ else profile="$2" fi -/etc/network/rocknet $1 $2 ${x#if} +/etc/network/rocknet "$1" "$2" "${x#if}" +echo "$profile" > /etc/network/proflie diff --git a/package/base/sysfiles/network.init b/package/base/sysfiles/network.init index bb30c0757..5634da0a7 100644 --- a/package/base/sysfiles/network.init +++ b/package/base/sysfiles/network.init @@ -30,11 +30,15 @@ main_begin block_begin(start, `Setting up network devices.') [ -x /etc/network/getprofile ] && /etc/network/getprofile - check(`/etc/network/rocknet auto auto up') + profile="`cat /etc/network/profile`" + profile={profile:-default} + check(`/etc/network/rocknet $profile auto up') block_end block_begin(stop, `Shutting down network devices.') - check(`/etc/network/rocknet auto auto down') + profile="`cat /etc/network/profile`" + profile={profile:-default} + check(`/etc/network/rocknet $profile auto down') block_end main_end diff --git a/package/base/sysfiles/rocknet_modules_base.sh b/package/base/sysfiles/rocknet_modules_base.sh index 3cfd1ea65..208b2a115 100644 --- a/package/base/sysfiles/rocknet_modules_base.sh +++ b/package/base/sysfiles/rocknet_modules_base.sh @@ -7,7 +7,7 @@ public_auto() { auto_if=() for x in "$@"; do a="${x%(*}"; b="${x#*(}" - b="${b#)}"; b="${b//,/ }" + b="${b/)}"; b="${b//,/ }" if [ "$a" = "$b" ]; then auto_if[${#auto_if[*]}]="$a" else