diff options
Diffstat (limited to 'abs/core-testing/LinHES-config/install_functions.sh')
-rwxr-xr-x | abs/core-testing/LinHES-config/install_functions.sh | 65 |
1 files changed, 56 insertions, 9 deletions
diff --git a/abs/core-testing/LinHES-config/install_functions.sh b/abs/core-testing/LinHES-config/install_functions.sh index 9b39437..ea9e61c 100755 --- a/abs/core-testing/LinHES-config/install_functions.sh +++ b/abs/core-testing/LinHES-config/install_functions.sh @@ -161,10 +161,10 @@ fi function rest_of_network () { #netmask - echo $CMDLINE | grep -q netmask + echo $CMDLINE | grep -q cnetmask if [ $? -eq 0 ] then - TEMPVAR=${CMDLINE#*netmask=} + TEMPVAR=${CMDLINE#*cnetmask=} NETMASK=${TEMPVAR%% *} /sbin/ifconfig eth0 $IP netmask $NETMASK nm=`/usr/bin/nmconv.py -obits $NETMASK` @@ -175,10 +175,10 @@ function rest_of_network () { printhl " Netmask not found" fi #gateway - echo $CMDLINE | grep -q gateway + echo $CMDLINE | grep -q cgateway if [ $? -eq 0 ] then - TEMPVAR=${CMDLINE#*gateway=} + TEMPVAR=${CMDLINE#*cgateway=} GATEWAY=${TEMPVAR%% *} /sbin/route add default gw $GATEWAY update_db_settings HostGW${MYTHDEFAULT} "$GATEWAY" @@ -187,10 +187,10 @@ function rest_of_network () { fi #dns - echo $CMDLINE | grep -q dns + echo $CMDLINE | grep -q cdns if [ $? -eq 0 ] then - TEMPVAR=${CMDLINE#*dns=} + TEMPVAR=${CMDLINE#*cdns=} DNS=${TEMPVAR%% *} echo "nameserver $DNS" >> /etc/resolv.conf update_db_settings HostDNS${MYTHDEFAULT} "$DNS" @@ -200,10 +200,10 @@ function rest_of_network () { } function init_network { - echo $CMDLINE |grep -q netdev + echo $CMDLINE |grep -q cnetdev if [ $? -eq 0 ] then - TEMPVAR=${CMDLINE#*netdev=} + TEMPVAR=${CMDLINE#*cnetdev=} MYTHDEFAULT=${TEMPVAR%% *} else MYTHDEFAULT="eth0" @@ -219,7 +219,7 @@ function init_network { update_db_settings HostActiveonboot${MYTHDEFAULT} 1 update_db_settings HostNetDevice ${MYTHDEFAULT} - TEMPVAR=${CMDLINE#*ip=} + TEMPVAR=${CMDLINE#*cip=} IP=${TEMPVAR%% *} if [ "$IP" == "dhcp" ] then @@ -232,6 +232,53 @@ function init_network { rest_of_network fi fi + + + + +} + +function dev_up_check(){ + /sbin/ifconfig $1 1>/dev/null 2>/dev/null + status=$? + if [ $status -eq 1 ] + then + return 0 + else + devip=`/sbin/ifconfig | grep -C1 $1| grep inet|grep -v inet6 | cut -d: -f2 | awk '{ print $1}'` + if [ "x$devip" = "x" ] + then + return 1 + else + return 0 + fi + fi +} + +function request_dhcp(){ + for ndev in eth0 eth1 wlan0 wlan1 ath0 + do + dev_up_check $ndev + status=$? + if [ $status -eq 1 ] + then + #interface is down, lets see if dhcp responds + dhcpcd -Td -t2 $ndev > /tmp/dhcpinfo.$ndev + TEMPVAR=`grep IPADDR /tmp/dhcpinfo.$ndev |cut -d\' -f2` + if [ ! x$TEMPVAR = x ] + then + update_db_settings HostIP$ndev "$TEMPVAR" + TEMPVAR=`grep NETMASK /tmp/dhcpinfo.$ndev |cut -d\' -f2` + nm=`/usr/bin/nmconv.py -obits $TEMPVAR` + TEMPVAR="/$nm $TEMPVAR" + update_db_settings HostNETMASK$ndev "$TEMPVAR" + TEMPVAR=`grep GATEWAYS /tmp/dhcpinfo.$ndev |cut -d\' -f2` + update_db_settings HostGW$ndev "$TEMPVAR" + TEMPVAR=`grep DNSSERVERS /tmp/dhcpinfo.$ndev |cut -d\' -f2` + update_db_settings HostDNS$ndev "$TEMPVAR" + fi + fi + done } function init_remote { |