aboutsummaryrefslogtreecommitdiffstats
path: root/bootscripts
diff options
context:
space:
mode:
authorBruce Dubbs <bdubbs@linuxfromscratch.org>2012-01-27 20:39:49 +0000
committerBruce Dubbs <bdubbs@linuxfromscratch.org>2012-01-27 20:39:49 +0000
commitbd899fb2652b66bb206c14c77716064490cf30c1 (patch)
tree2f612e4ca838795dac850143662aea3a44703f5f /bootscripts
parent661b74414696d154bdc3f90ed4dda3615d3bdb7f (diff)
Update scripts to support BLFS bridge devices.
Cosmetic cleanups git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@9716 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
Diffstat (limited to 'bootscripts')
-rw-r--r--bootscripts/lfs/lib/services/init-functions14
-rwxr-xr-xbootscripts/lfs/lib/services/ipv4-static13
-rwxr-xr-xbootscripts/lfs/sbin/ifdown32
-rwxr-xr-xbootscripts/lfs/sbin/ifup54
4 files changed, 66 insertions, 47 deletions
diff --git a/bootscripts/lfs/lib/services/init-functions b/bootscripts/lfs/lib/services/init-functions
index 9b200b414..a830a3ae6 100644
--- a/bootscripts/lfs/lib/services/init-functions
+++ b/bootscripts/lfs/lib/services/init-functions
@@ -67,6 +67,10 @@ SUCCESS_PREFIX="${SUCCESS} * ${NORMAL}"
FAILURE_PREFIX="${FAILURE}*****${NORMAL}"
WARNING_PREFIX="${WARNING} *** ${NORMAL}"
+SUCCESS_SUFFIX="${BRACKET}[${SUCCESS} OK ${BRACKET}]${NORMAL}"
+FAILURE_SUFFIX="${BRACKET}[${FAILURE} FAIL ${BRACKET}]${NORMAL}"
+WARNING_SUFFIX="${BRACKET}[${WARNING} WARN ${BRACKET}]${NORMAL}"
+
BOOTLOG=/run/var/bootlog
KILLDELAY=3
@@ -567,7 +571,7 @@ timespec()
log_success_msg()
{
echo -n -e "${BMPREFIX}${@}"
- echo -e "${CURS_ZERO}${SUCCESS_PREFIX}${SET_COL}${BRACKET}[${SUCCESS} OK ${BRACKET}]${NORMAL}"
+ echo -e "${CURS_ZERO}${SUCCESS_PREFIX}${SET_COL}${SUCCESS_SUFFIX}"
# Strip non-printable characters from log file
local logmessage=`echo "${@}" | sed 's/\\\033[^a-zA-Z]*.//g'`
@@ -581,7 +585,7 @@ log_success_msg()
log_success_msg2()
{
echo -n -e "${BMPREFIX}${@}"
- echo -e "${CURS_ZERO}${SUCCESS_PREFIX}${SET_COL}${BRACKET}[${SUCCESS} OK ${BRACKET}]${NORMAL}"
+ echo -e "${CURS_ZERO}${SUCCESS_PREFIX}${SET_COL}${SUCCESS_SUFFIX}"
echo " OK" >> ${BOOTLOG}
@@ -602,7 +606,7 @@ log_success_msg2()
log_failure_msg()
{
echo -n -e "${BMPREFIX}${@}"
- echo -e "${CURS_ZERO}${FAILURE_PREFIX}${SET_COL}${BRACKET}[${FAILURE} FAIL ${BRACKET}]${NORMAL}"
+ echo -e "${CURS_ZERO}${FAILURE_PREFIX}${SET_COL}${FAILURE_SUFFIX}"
# Strip non-printable characters from log file
@@ -616,7 +620,7 @@ log_failure_msg()
log_failure_msg2()
{
echo -n -e "${BMPREFIX}${@}"
- echo -e "${CURS_ZERO}${FAILURE_PREFIX}${SET_COL}${BRACKET}[${FAILURE} FAIL ${BRACKET}]${NORMAL}"
+ echo -e "${CURS_ZERO}${FAILURE_PREFIX}${SET_COL}${FAILURE_SUFFIX}"
echo "FAIL" >> ${BOOTLOG}
@@ -635,7 +639,7 @@ log_failure_msg2()
log_warning_msg()
{
echo -n -e "${BMPREFIX}${@}"
- echo -e "${CURS_ZERO}${WARNING_PREFIX}${SET_COL}${BRACKET}[${WARNING} WARN ${BRACKET}]${NORMAL}"
+ echo -e "${CURS_ZERO}${WARNING_PREFIX}${SET_COL}${WARNING_SUFFIX}"
# Strip non-printable characters from log file
local logmessage=`echo "${@}" | sed 's/\\\033[^a-zA-Z]*.//g'`
diff --git a/bootscripts/lfs/lib/services/ipv4-static b/bootscripts/lfs/lib/services/ipv4-static
index 5a5693d09..16c5e473e 100755
--- a/bootscripts/lfs/lib/services/ipv4-static
+++ b/bootscripts/lfs/lib/services/ipv4-static
@@ -42,8 +42,13 @@ fi
case "${2}" in
up)
- if [ "$(ip addr show ${1} | grep ${IP})" == "" ]; then
- log_info_msg2 "\n" # Terminate the previous message
+ if [ "$(ip addr show ${1} 2>/dev/null | grep ${IP})" == "" ]; then
+
+ # Cosmetic output not needed for multiple services
+ if ! $(echo ${SERVICE} | grep -q " "); then
+ log_info_msg2 "\n" # Terminate the previous message
+ fi
+
log_info_msg "Adding IPv4 address ${IP} to the ${1} interface..."
ip addr add ${args} dev ${1}
evaluate_retval
@@ -64,7 +69,7 @@ case "${2}" in
;;
down)
- if [ "$(ip addr show ${1} | grep ${IP})" != "" ]; then
+ if [ "$(ip addr show ${1} 2>/dev/null | grep ${IP})" != "" ]; then
log_info_msg "Removing IPv4 address ${IP} from the ${1} interface..."
ip addr del ${args} dev ${1}
evaluate_retval
@@ -72,7 +77,7 @@ case "${2}" in
if [ -n "${GATEWAY}" ]; then
# Only remove the gateway if ther are no remaining ipv4 addresses
- if [ "$(ip addr show ${1} | grep 'inet ')" != "" ]; then
+ if [ "$(ip addr show ${1} 2>/dev/null | grep 'inet ')" != "" ]; then
log_info_msg "Removing default gateway..."
ip route del default
evaluate_retval
diff --git a/bootscripts/lfs/sbin/ifdown b/bootscripts/lfs/sbin/ifdown
index 0ec9867f3..8feba6729 100755
--- a/bootscripts/lfs/sbin/ifdown
+++ b/bootscripts/lfs/sbin/ifdown
@@ -67,20 +67,26 @@ if [ "$IFACE" = "" ]; then
exit 1
fi
-# This will run the service script, if SERVICE is set
-if [ -n "${SERVICE}" -a -x "/lib/services/${SERVICE}" ]; then
- if ip link show ${IFACE} > /dev/null 2>&1; then
- IFCONFIG=${file} /lib/services/${SERVICE} ${IFACE} down
- else
- log_warning_msg "Interface ${1} doesn't exist."
- echo_warning
- fi
+# Reverse the order
+SERVICES=
+for S in ${SERVICE}; do SERVICES="${SERVICES} ${S}"; done
+
+# This will run the service scripts
+if ip link show ${IFACE} > /dev/null 2>&1; then
+ for S in ${SERVICES}; do
+
+ if [ -n "${S}" -a -x "/lib/services/${S}" ]; then
+ IFCONFIG=${file} /lib/services/${S} ${IFACE} down
+ else
+ MSG="Unable to process ${file}. Either "
+ MSG="${MSG}the SERVICE variable was not set "
+ MSG="${MSG}or the specified service cannot be executed."
+ log_failure_msg "$MSG"
+ exit 1
+ fi
+ done
else
- MSG="Unable to process ${file}. Either "
- MSG="${MSG}the SERVICE variable was not set"
- MSG="${MSG}or the specified service cannot be executed."
- log_failure_msg "$MSG"
- exit 1
+ log_warning_msg "Interface ${1} doesn't exist."
fi
link_status=`ip link show ${IFACE} 2>/dev/null`
diff --git a/bootscripts/lfs/sbin/ifup b/bootscripts/lfs/sbin/ifup
index 42afadfce..2e3d88e49 100755
--- a/bootscripts/lfs/sbin/ifup
+++ b/bootscripts/lfs/sbin/ifup
@@ -55,7 +55,7 @@ file=/etc/sysconfig/ifconfig.${1}
. /lib/lsb/init-functions
-log_info_msg "Bringing up the ${1} interface: "
+log_info_msg "Bringing up the ${1} interface... "
if [ ! -r "${file}" ]; then
log_warning_msg "\n${file} is missing or cannot be accessed."
@@ -76,35 +76,39 @@ if [ "${IN_BOOT}" = "1" -a "${ONBOOT}" != "yes" ]; then
exit 0
fi
-if [ -n "${SERVICE}" -a -x "/lib/services/${SERVICE}" ]; then
- if [ -z "${CHECK_LINK}" -o \
- "${CHECK_LINK}" = "y" -o \
- "${CHECK_LINK}" = "yes" -o \
- "${CHECK_LINK}" = "1" ]; then
+for S in ${SERVICES}; do
+ if [ ! -n "${S}" -o ! -x "/lib/services/${S}" ]; then
+ MSG="\nUnable to process ${file}. Either "
+ MSG="${MSG}the SERVICE variable was not set "
+ MSG="${MSG}or the specified service cannot be executed."
+ log_failure_msg "$MSG"
+ exit 1
+ fi
+done
- # Bring up the interface
- if ip link show ${IFACE} > /dev/null 2>&1; then
- link_status=`ip link show ${IFACE}`
+if [ -z "${CHECK_LINK}" -o \
+ "${CHECK_LINK}" = "y" -o \
+ "${CHECK_LINK}" = "yes" -o \
+ "${CHECK_LINK}" = "1" ]; then
- if [ -n "${link_status}" ]; then
- if ! echo "${link_status}" | grep -q UP; then
- ip link set ${IFACE} up
- fi
- fi
+ # Bring up the interface
+ if ip link show ${IFACE} > /dev/null 2>&1; then
+ link_status=`ip link show ${IFACE}`
- else
- log_warning_msg "\nInterface ${IFACE} doesn't exist."
+ if [ -n "${link_status}" ]; then
+ if ! echo "${link_status}" | grep -q UP; then
+ ip link set ${IFACE} up
+ fi
fi
- fi
-
- IFCONFIG=${file} /lib/services/${SERVICE} ${IFACE} up
-else
- MSG="\nUnable to process ${file}. Either "
- MSG="${MSG}the SERVICE variable was not set "
- MSG="${MSG}or the specified service cannot be executed."
- log_failure_msg "$MSG"
- exit 1
+ else
+ log_warning_msg "\nInterface ${IFACE} doesn't exist."
+ exit 0
+ fi
fi
+for S in ${SERVICE}; do
+ IFCONFIG=${file} /lib/services/${S} ${IFACE} up
+done
+
# End /sbin/ifup