atm1 (86342) | atm1 (100280) |
---|---|
1#!/bin/sh 2# 3# Copyright (c) 2000 The FreeBSD Project 4# All rights reserved. 5# 6# Redistribution and use in source and binary forms, with or without 7# modification, are permitted provided that the following conditions 8# are met: --- 10 unchanged lines hidden (view full) --- 19# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 20# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 21# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 22# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 23# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 24# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 25# SUCH DAMAGE. 26# | 1#!/bin/sh 2# 3# Copyright (c) 2000 The FreeBSD Project 4# All rights reserved. 5# 6# Redistribution and use in source and binary forms, with or without 7# modification, are permitted provided that the following conditions 8# are met: --- 10 unchanged lines hidden (view full) --- 19# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 20# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 21# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 22# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 23# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 24# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 25# SUCH DAMAGE. 26# |
27# $FreeBSD: head/etc/rc.d/atm1 86342 2001-11-14 06:35:43Z sheldonh $ | 27# $FreeBSD: head/etc/rc.d/atm1 100280 2002-07-18 05:00:17Z gordon $ |
28# 29 | 28# 29 |
30# | 30# PROVIDE: atm1 31# REQUIRE: root 32# BEFORE: network1 33# KEYWORD: FreeBSD 34 35. /etc/rc.subr 36 37name="atm" 38rcvar="atm_enable" 39start_cmd="atm_start" 40stop_cmd=":" 41 |
31# ATM networking startup script 32# 33# Initial interface configuration. 34# N.B. /usr is not mounted. 35# | 42# ATM networking startup script 43# 44# Initial interface configuration. 45# N.B. /usr is not mounted. 46# |
36atm_pass1() { | 47start_cmd() 48{ |
37 # Locate all probed ATM adapters 38 atmdev=`atm sh stat int | while read dev junk; do 39 case ${dev} in 40 hea[0-9] | hea[0-9][0-9]) 41 echo "${dev} " 42 ;; 43 hfa[0-9] | hfa[0-9][0-9]) 44 echo "${dev} " --- 76 unchanged lines hidden (view full) --- 121 case ${ilmid} in 122 1) 123 echo -n ' ilmid' 124 ilmid 125 ;; 126 esac 127 128 echo '.' | 49 # Locate all probed ATM adapters 50 atmdev=`atm sh stat int | while read dev junk; do 51 case ${dev} in 52 hea[0-9] | hea[0-9][0-9]) 53 echo "${dev} " 54 ;; 55 hfa[0-9] | hfa[0-9][0-9]) 56 echo "${dev} " --- 76 unchanged lines hidden (view full) --- 133 case ${ilmid} in 134 1) 135 echo -n ' ilmid' 136 ilmid 137 ;; 138 esac 139 140 echo '.' |
129 atm_pass1_done=YES | |
130} 131 | 141} 142 |
132# 133# Finish up configuration. 134# N.B. /usr is not mounted. 135# 136atm_pass2() { 137 echo -n 'Configuring ATM network interfaces:' 138 139 atm_scspd=0 140 atm_atmarpd="" 141 142 # Configure network interfaces 143 for phy in ${atm_phy}; do 144 eval netif_args=\$atm_netif_${phy} 145 set -- ${netif_args} 146 netname=$1 147 netcnt=$2 148 netindx=0 149 while [ ${netindx} -lt ${netcnt} ]; do 150 net="${netname}${netindx}" 151 netindx=$((${netindx} + 1)) 152 echo -n " ${net}" 153 154 # Configure atmarp server 155 eval atmarp_args=\$atm_arpserver_${net} 156 if [ -n "${atmarp_args}" ]; then 157 atm set arpserver ${net} ${atmarp_args} || 158 continue 159 fi 160 eval scsparp_args=\$atm_scsparp_${net} 161 162 case ${scsparp_args} in 163 [Yy][Ee][Ss]) 164 case ${atmarp_args} in 165 local) 166 ;; 167 *) 168 echo ' local arpserver required for SCSP' 169 continue 170 ;; 171 esac 172 173 atm_atmarpd="${atm_atmarpd} ${net}" 174 atm_scspd=1 175 esac 176 done 177 done 178 echo '.' 179 180 # Define any PVCs. 181 if [ -n "${atm_pvcs}" ]; then 182 for i in ${atm_pvcs}; do 183 eval pvc_args=\$atm_pvc_${i} 184 atm add pvc ${pvc_args} 185 done 186 fi 187 188 # Define any permanent ARP entries. 189 if [ -n "${atm_arps}" ]; then 190 for i in ${atm_arps}; do 191 eval arp_args=\$atm_arp_${i} 192 atm add arp ${arp_args} 193 done 194 fi 195 atm_pass2_done=YES 196} 197 198# 199# Start any necessary daemons. 200# 201atm_pass3() { 202 # Start SCSP daemon (if needed) 203 case ${atm_scspd} in 204 1) 205 echo -n ' scspd' 206 scspd 207 ;; 208 esac 209 210 # Start ATMARP daemon (if needed) 211 if [ -n "${atm_atmarpd}" ]; then 212 echo -n ' atmarpd' 213 atmarpd ${atm_atmarpd} 214 fi 215 216 atm_pass3_done=YES 217} | 143load_rc_config $name 144run_rc_command "$1" |