diff -ruN --exclude=CVS /usr/test/base/etc/rc.d/atm1 ./atm1 --- /usr/test/base/etc/rc.d/atm1 Fri Apr 18 19:55:05 2003 +++ ./atm1 Wed Jul 23 11:29:40 2003 @@ -46,6 +46,14 @@ # atm_start() { + # Load the HARP pseudo interface + kldstat -v | grep -q if_harp || kldload if_harp + + # Load all the NATM drivers that we need + for natm in ${natm_interfaces} ; do + ifconfig ${natm} up + done + # Locate all probed ATM adapters atmdev=`atm sh stat int | while read dev junk; do case ${dev} in @@ -56,6 +64,20 @@ echo "${dev} " ;; idt[0-9] | idt[0-9][0-9]) + echo "${dev} " + ;; + + # NATM interfaces per pseudo driver + en[0-9] | en[0-9][0-9]) + echo "${dev} " + ;; + fatm[0-9] | fatm[0-9][0-9]) + echo "${dev} " + ;; + hatm[0-9] | hatm[0-9][0-9]) + echo "${dev} " + ;; + patm[0-9] | patm[0-9][0-9]) echo "${dev} " ;; *) diff -ruN --exclude=CVS /usr/test/base/etc/rc.d/atm2 ./atm2 --- /usr/test/base/etc/rc.d/atm2 Thu Jan 1 01:00:00 1970 +++ ./atm2 Wed Jul 23 11:29:40 2003 @@ -0,0 +1,97 @@ +#!/bin/sh +# +# Copyright (c) 2000 The FreeBSD Project +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +# SUCH DAMAGE. +# +# $FreeBSD: src/etc/rc.d/atm2.sh,v 1.13 2003/06/29 05:15:57 mtm Exp $ +# + +# PROVIDE: atm2 +# REQUIRE: atm1 netif +# BEFORE: routing +# KEYWORD: FreeBSD + +# +# Additional ATM interface configuration +# +. /etc/rc.subr + +name="atm2" +rcvar="atm_enable" +start_cmd="atm2_start" +stop_cmd=":" + +atm2_start() +{ + # Configure network interfaces + + # get a list of physical interfaces + atm_phy=`atm show stat int | { read junk ; read junk ; \ + while read dev junk ; do + case ${dev} in + en[0-9] | en[0-9][0-9]) + ;; + *) + echo "${dev} " + ;; + esac + done ; }` + + for phy in ${atm_phy}; do + eval netif_args=\$atm_netif_${phy} + set -- ${netif_args} + # skip unused physical interfaces + if [ $# -lt 2 ] ; then + continue + fi + + netname=$1 + netcnt=$2 + netindx=0 + while [ ${netindx} -lt ${netcnt} ]; do + net="${netname}${netindx}" + netindx=$((${netindx} + 1)) + echo -n " ${net}" + + # Configure atmarp server + eval atmarp_args=\$atm_arpserver_${net} + if [ -n "${atmarp_args}" ]; then + atm set arpserver ${net} ${atmarp_args} || + continue + fi + done + done + echo '.' + + # Define any permanent ARP entries. + if [ -n "${atm_arps}" ]; then + for i in ${atm_arps}; do + eval arp_args=\$atm_arp_${i} + atm add arp ${arp_args} + done + fi +} + +load_rc_config $name +run_rc_command "$1" diff -ruN --exclude=CVS /usr/test/base/etc/rc.d/atm3 ./atm3 --- /usr/test/base/etc/rc.d/atm3 Thu Jan 1 01:00:00 1970 +++ ./atm3 Wed Jul 23 11:29:40 2003 @@ -0,0 +1,94 @@ +#!/bin/sh +# +# Copyright (c) 2000 The FreeBSD Project +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +# SUCH DAMAGE. +# +# $FreeBSD: src/etc/rc.d/atm3.sh,v 1.10 2002/06/13 22:14:36 gordon Exp $ +# + +# Start ATM daemons + +# PROVIDE: atm3 +# REQUIRE: atm2 +# BEFORE: DAEMON +# KEYWORD: FreeBSD + +. /etc/rc.subr + +name="atm3" +rcvar="atm_enable" +start_cmd="atm3_start" +stop_cmd=":" + +atm3_start() +{ + echo -n 'Starting ATM daemons:' + + # Get a list of network interfaces + atm_nif=`atm sh netif | { read junk ; \ + while read dev junk ; do + echo "${dev} " + done + }` + + for net in ${atm_nif} ; do + eval atmarp_args=\$atm_arpserver_${net} + eval scsparp_args=\$atm_scsparp_${net} + + case ${scsparp_args} in + [Yy][Ee][Ss]) + case ${atmarp_args} in + local) + ;; + *) + warn "${net}: local arpserver required for SCSP" + continue + ;; + esac + + atm_atmarpd="${atm_atmarpd} ${net}" + atm_scspd=1 + ;; + esac + + done + + # Start SCSP daemon (if needed) + case ${atm_scspd} in + 1) + echo -n ' scspd' + scspd + ;; + esac + + # Start ATMARP daemon (if needed) + if [ -n "${atm_atmarpd}" ]; then + echo -n ' atmarpd' + atmarpd ${atm_atmarpd} + fi + echo '.' +} + +load_rc_config $name +run_rc_command "$1"