From 25f7a0471340e8d6c2b37e3c75aa7d0ae209d09d Mon Sep 17 00:00:00 2001 From: Dieter Plaetinck Date: Tue, 28 Dec 2010 17:56:00 +0100 Subject: cleanup worker_auto_network() / target_configure_network() code The only thing needed to know before calling target_configure_network() is whether $RUNTIME_DIR/aif-network-settings exists; if that exists, network setup has been run sucessfully and all values are known. It's up to target_configure_network() to source that, which means worker_auto_network() functions can become simpler. Also, variable name cleanup: s/S_DHCP/DHCP/ --- src/core/libs/lib-network.sh | 12 ++++-------- src/core/libs/lib-ui-interactive.sh | 10 +++++----- 2 files changed, 9 insertions(+), 13 deletions(-) (limited to 'src/core/libs') diff --git a/src/core/libs/lib-network.sh b/src/core/libs/lib-network.sh index 19d4862..aa961ce 100644 --- a/src/core/libs/lib-network.sh +++ b/src/core/libs/lib-network.sh @@ -1,17 +1,13 @@ #!/bin/bash -# auto_network(). # configures network on host system according to installer settings # if some variables are not set, we handle that transparantly -# $1 dhcp/fixed -# $2 http proxy (optional. defaults to '') -# $3 ftp proxy (optional. defaults to '') +# however, at least $DHCP must be set, so we know what do to +# we assume that you checked whether networking has been setup before calling us target_configure_network() { - [ "$1" != dhcp -a "$1" != fixed ] && die_error "target_configure_network \$1 must be 'dhcp' or 'fixed'" - PROXY_HTTP="$2" - PROXY_FTP="$3" - if [ "$1" = fixed ]; then + source $RUNTIME_DIR/aif-network-settings 2>/dev/null || return 1 + if [ "$DHCP" = 0 ] ; then sed -i "s/#eth0=\"eth0/eth0=\"eth0/g" ${var_TARGET_DIR}/etc/rc.conf || return 1 sed -i "s/^eth0=\"dhcp/#eth0=\"dhcp/g" ${var_TARGET_DIR}/etc/rc.conf || return 1 sed -i "s#eth0=\"eth0#${INTERFACE:-eth0}=\"${INTERFACE:-eth0}#g" ${var_TARGET_DIR}/etc/rc.conf || return 1 diff --git a/src/core/libs/lib-ui-interactive.sh b/src/core/libs/lib-ui-interactive.sh index e7f114b..0b3abb4 100644 --- a/src/core/libs/lib-ui-interactive.sh +++ b/src/core/libs/lib-ui-interactive.sh @@ -787,7 +787,7 @@ If any previous configuration you've done until now (like fancy filesystems) req # returns: 1 on failure interactive_runtime_network() { INTERFACE="" - S_DHCP="" + DHCP="" local ifaces ifaces=$(ifconfig -a |grep "Link encap:Ethernet"|sed 's/ \+Link encap:Ethernet \+HWaddr \+/ /g') @@ -810,9 +810,9 @@ interactive_runtime_network() { show_warning "Dhcpcd problem" "DHCP request failed. dhcpcd returned 0 but no ip configured for $INTERFACE" return 1 fi - S_DHCP=1 + DHCP=1 else - S_DHCP=0 + DHCP=0 NETPARAMETERS="" while [ "$NETPARAMETERS" = "" ]; do ask_string "Enter your IP address" "192.168.0.2" || return 1 @@ -859,14 +859,14 @@ interactive_runtime_network() { echo "nameserver $DNS" >/etc/resolv.conf fi echo "INTERFACE=$INTERFACE - S_DHCP=$S_DHCP + DHCP=$DHCP IPADDR=$IPADDR SUBNET=$SUBNET BROADCAST=$BROADCAST GW=$GW DNS=$DNS PROXY_HTTP=$PROXY_HTTP - PROXY_FTP=$PROXY_FTP" > $RUNTIME_DIR/aif-network-settings + PROXY_FTP=$PROXY_FTP" > $RUNTIME_DIR/aif-network-settings || return 1 notify "The network is configured." return 0 } -- cgit v1.2.3-54-g00ecf