source: bootscripts-standard/clfs/sysconfig/network-devices/services/ipv4-static@ 7df280d

Last change on this file since 7df280d was 7df280d, checked in by Joe Ciccone <jciccone@…>, 17 years ago

Change /bin/sh to /bin/bash in the bootscripts because the bootscripts use bashisms. Having ash linked to sh will cause errors. Thanks to Bigdassaved for providing the diff and Copper for bring up the issue.

  • Property mode set to 100644
File size: 1.9 KB
Line 
1#!/bin/bash
2########################################################################
3# Begin $network_devices/services/ipv4-static
4#
5# Description : IPV4 Static Boot Script
6#
7# Authors : Nathan Coulson - nathan@linuxfromscratch.org
8# Kevin P. Fleming - kpfleming@linuxfromscratch.org
9#
10# Version : 00.00
11#
12# Notes :
13#
14########################################################################
15
16. /etc/sysconfig/rc
17. ${rc_functions}
18. ${IFCONFIG}
19
20if [ -z "${IP}" ]; then
21 boot_mesg "IP variable missing from ${IFCONFIG}, cannot continue." ${FAILURE}
22 echo_failure
23 exit 1
24fi
25
26if [ -z "${PREFIX}" -a -z "${PEER}" ]; then
27 boot_mesg -n "PREFIX variable missing from ${IFCONFIG}," ${WARNING}
28 boot_mesg " assuming 24."
29 echo_warning
30 PREFIX=24
31 args="${args} ${IP}/${PREFIX}"
32elif [ -n "${PREFIX}" -a -n "${PEER}" ]; then
33 boot_mesg "PREFIX and PEER both specified in ${IFCONFIG}, cannot continue." ${FAILURE}
34 echo_failure
35 exit 1
36elif [ -n "${PREFIX}" ]; then
37 args="${args} ${IP}/${PREFIX}"
38elif [ -n "${PEER}" ]; then
39 args="${args} ${IP} peer ${PEER}"
40fi
41
42if [ -n "${BROADCAST}" ]; then
43 args="${args} broadcast ${BROADCAST}"
44fi
45
46case "${2}" in
47 up)
48 boot_mesg "Adding IPv4 address ${IP} to the ${1} interface..."
49 ip addr add ${args} dev ${1}
50 evaluate_retval
51
52 if [ -n "${GATEWAY}" ]; then
53 if ip route | grep -q default; then
54 boot_mesg "Gateway already setup; skipping." ${WARNING}
55 echo_warning
56 else
57 boot_mesg "Setting up default gateway..."
58 ip route add default via ${GATEWAY} dev ${1}
59 evaluate_retval
60 fi
61 fi
62 ;;
63
64 down)
65 if [ -n "${GATEWAY}" ]; then
66 boot_mesg "Removing default gateway..."
67 ip route del default
68 evaluate_retval
69 fi
70
71 boot_mesg "Removing IPv4 address ${IP} from the ${1} interface..."
72 ip addr del ${args} dev ${1}
73 evaluate_retval
74 ;;
75
76 *)
77 echo "Usage: ${0} [interface] {up|down}"
78 exit 1
79 ;;
80esac
81
82# End $network_devices/services/ipv4-static
Note: See TracBrowser for help on using the repository browser.