summaryrefslogtreecommitdiffstats
path: root/builder/modules.d/slx-network/scripts/setup-network
diff options
context:
space:
mode:
Diffstat (limited to 'builder/modules.d/slx-network/scripts/setup-network')
-rwxr-xr-xbuilder/modules.d/slx-network/scripts/setup-network88
1 files changed, 0 insertions, 88 deletions
diff --git a/builder/modules.d/slx-network/scripts/setup-network b/builder/modules.d/slx-network/scripts/setup-network
deleted file mode 100755
index 1f9eaddf..00000000
--- a/builder/modules.d/slx-network/scripts/setup-network
+++ /dev/null
@@ -1,88 +0,0 @@
-#!/bin/bash
-
-type emergency_shell >/dev/null 2>&1 || . /lib/dracut-lib.sh
-
-. /run/openslx/network.conf
-
-_logfile="/run/openslx/network.log"
-
-# for the boot interface?
-if [ ! -e "/sys/class/net/${SLX_PXE_NETIF}/device" ]; then
- exit 1
-fi
-
-wait_for_iface() {
- local _iface="$1"
- local _timeout="${2:-50}"
- while [ "$_timeout" -ne 0 ]; do
- [ "$(cat /sys/class/net/${_iface}/operstate)" = "up" ] && break
- (( _timeout -- ))
- usleep 100000
- done
- [ "$_timeout" -ne 0 ]
-}
-
-# For debugging...
-{
-set -x
-
-ip link set dev "$SLX_PXE_NETIF" up
-if ! wait_for_iface "$SLX_PXE_NETIF" 100; then
- warn "'$SLX_PXE_NETIF' still not up after 10sec ..."
- # TODO handle case where we waited for 10sec and it is still not up
-fi
-
-if [ -n "$SLX_BRIDGE" ]; then
- for try in 1 2 3 fail; do
- (
- set -e
- brctl addbr "$SLX_BRIDGE"
- brctl stp "$SLX_BRIDGE" 0
- brctl setfd "$SLX_BRIDGE" 0.000000000001
- ip link set addr "$SLX_PXE_MAC" "$SLX_BRIDGE"
- brctl addif "$SLX_BRIDGE" "$SLX_PXE_NETIF"
- ip link set dev "$SLX_BRIDGE" up
- wait_for_iface "$SLX_BRIDGE"
- )
- # success?
- [ "$?" -eq 0 ] && break
-
- # nope, handle
- if [ "$try" = "fail" ]; then
- emergency_shell "Failed to setup main network bridge, giving up!"
- fi
- warn "Failed to setup main network bridge on try $try. Retrying ..."
- # delete bridge, inc try and sleep 100ms before trying again
- [ -e "/sys/class/net/${SLX_BRIDGE}" ] && brctl delbr "$SLX_BRIDGE"
- try=$(( try + 1 ))
- usleep 100000
- done
-fi
-# add the IP address on the bridge/boot if
-ip addr add \
- "${SLX_PXE_CLIENT_IP}/$(ipcalc -s -p "$SLX_PXE_CLIENT_IP" "$SLX_PXE_NETMASK" | sed "s/.*=//")" \
- broadcast "$(ipcalc -s -b "$SLX_PXE_CLIENT_IP" "$SLX_PXE_NETMASK" | sed "s/.*=//")" \
- dev "${SLX_BRIDGE:-${SLX_PXE_NETIF}}"
-
-if [ "$USE_DHCP_UUID" = "yes" ] && [ -s "/run/system-uuid" ]; then
- UUID="$(cat /run/system-uuid)"
-fi
-
-# udhcpc
-for i in 1 1 1 fail; do
- [ "$i" = "fail" ] && emergency_shell "DHCP failed 3 times... cannot continue."
- udhcpc -t 4 -T 3 -f -n -q \
- -i "${SLX_BRIDGE:-${SLX_PXE_NETIF}}" \
- "${SLX_PXE_CLIENT_IP:+-r $SLX_PXE_CLIENT_IP}" \
- "${UUID:+-x 0x3d:$UUID}" \
- -O ntpsrv -O domain -O wpad -O search -O nisdomain \
- -s "/usr/local/bin/udhcpc-trigger"
- # success?
- [ "$?" -eq 0 ] && break
- # nope, keep trying...
- warn "DHCP failed, retrying in 1sec..."
- sleep $i
-done
-
-set +x
-} &>> "${_logfile}.$$"