- fi
-
- # split args of ethdevice=eth0,eth1 into "eth0 eth1"
- for device in $(echo $ETHDEVICE | sed 's/,/ /g') ; do
- devlist="$devlist $device"
- done
-
- # this is tricky (and ugly) because ipconfig sometimes just hangs/runs into
- # an endless loop; if execution fails give it two further tries, that's
- # why we use '$devlist $devlist $devlist' for the other for loop
- for dev in $devlist $devlist $devlist ; do
- echo "Executing ipconfig -t $ETHDEV_TIMEOUT $dev"
- ipconfig -t "$ETHDEV_TIMEOUT" $dev | tee -a /netboot.config &
- jobid=$!
- sleep "$ETHDEV_TIMEOUT" ; sleep 1
- if [ -r /proc/"$jobid"/status ] ; then
- echo "Killing job $jobid for device $dev as ipconfig ran into recursion..."
- kill -9 $jobid
- fi
-
- # if configuration of device worked we should have an assigned
- # IP address, if so let's use the device as $DEVICE for later usage.
- # simple and primitive approach which seems to work fine
- if ifconfig $dev | grep -q 'inet.*addr:' ; then
- export DEVICE="$dev"
- break
- fi
- done
-