Subversion Repositories configs

Rev

Rev 3 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
3 - 1
#!/bin/sh
2
 
3
cd /etc/sysconfig/network-scripts
4
. ./network-functions
5
 
6
[ -f ../network ] && . ../network
7
 
8
unset REALDEVICE
9
if [ "$1" = --realdevice ] ; then
10
    REALDEVICE=$2
11
    shift 2
12
fi
13
 
14
CONFIG=$1
15
source_config
16
 
17
[ -z "$REALDEVICE" ] && REALDEVICE=$DEVICE
18
 
19
if [ "$ISALIAS" = no ] ; then
20
    /etc/sysconfig/network-scripts/ifup-aliases ${DEVICE} ${CONFIG}
21
fi
22
 
23
/etc/sysconfig/network-scripts/ifup-routes ${REALDEVICE} ${DEVNAME}
24
 
25
 
26
if [ "$PEERDNS" != "no" ] ||[ -n "$RESOLV_MODS" -a "$RESOLV_MODS" != "no" ]; then
27
  [ -n "$MS_DNS1" ] && DNS1=$MS_DNS1
28
  [ -n "$MS_DNS2" ] && DNS2=$MS_DNS2
57 - 29
 
30
  if [ -z "$DNS1" -a -n "$DNS2" ]; then
31
          DNS1=$DNS2
32
          DNS2=
33
  fi
34
 
35
  if ( [ -n "$DNS1" ] && ! grep -q "^nameserver $DNS1" /etc/resolv.conf ) ||
36
   ( [ -n "$DNS2" ] && ! grep -q "^nameserver $DNS2" /etc/resolv.conf ) &&
3 - 37
   tr=$(mktemp /tmp/XXXXXX) ; then
38
    current_replacement="$DNS1"
39
    next_replacement="$DNS2"
40
    search=
41
    (cat /etc/resolv.conf ; echo EOF ; echo EOF) | while read answer ; do
42
	case $answer in
43
	    nameserver*|EOF)
44
		if [ -n "$current_replacement" ] ; then
45
		    echo "nameserver $current_replacement" >> $tr
46
		    if [ -n "$next_replacement" ] ; then
47
			current_replacement="$next_replacement"
48
			next_replacement=
49
		    else
50
			current_replacement=
51
		    fi
52
		else
53
		    if [ "$answer" != EOF ] ; then
54
			echo "$answer" >> $tr
55
		    fi
56
		fi
57
		;;
58
	    domain*|search*)
59
	        if [ -n "$DOMAIN" ]; then
60
	            echo "$answer" | while read key value ; do
61
		        search="$search $value"
62
		    done
63
		else
64
		    echo "$answer" >> $tr
65
		fi
66
		;;
67
	    *)
68
		echo "$answer" >> $tr
69
		;;
70
	esac
71
    done
72
    if [ -n "$DOMAIN" ]; then
73
        echo "search $DOMAIN $search" >> $tr
74
    fi
75
 
76
    # backup resolv.conf
77
    cp -af /etc/resolv.conf /etc/resolv.conf.save
78
 
79
    # maintain permissions
80
    # but set umask in case it doesn't exist!
81
    oldumask=$(umask)
82
    umask 022
83
    change_resolv_conf $tr
84
    rm -f $tr
85
    umask $oldumask
86
  fi
87
fi
88
 
89
# don't set hostname on ppp/slip connections
90
if [ "$2" = "boot" -a \
91
     "${DEVICE}" != lo -a \
92
     "${DEVICETYPE}" != "ppp" -a \
93
     "${DEVICETYPE}" != "slip" ]; then
94
    if need_hostname; then
95
	IPADDR=$(LANG=C ip -o -4 addr ls dev ${DEVICE} | awk '{ print $4 ; exit }')
96
	eval $(/bin/ipcalc --silent --hostname ${IPADDR} ; echo "status=$?")
97
	if [ "$status" = "0" ]; then
98
	    set_hostname $HOSTNAME
99
	fi
100
    fi
101
fi
102
 
103
# Notify programs that have requested notification
104
do_netreport
105
 
106
if [ -x /sbin/ifup-local ]; then
107
    /sbin/ifup-local ${DEVICE}
108
fi
109
 
110
exit 0