diff options
Diffstat (limited to 'etc/rc.d/isdnd')
-rw-r--r-- | etc/rc.d/isdnd | 56 |
1 files changed, 7 insertions, 49 deletions
diff --git a/etc/rc.d/isdnd b/etc/rc.d/isdnd index 87c8a40..5363df4 100644 --- a/etc/rc.d/isdnd +++ b/etc/rc.d/isdnd @@ -1,10 +1,15 @@ #!/bin/sh # -# $NetBSD: isdnd,v 1.2 2001/01/07 17:53:36 martin Exp $ +# $NetBSD: isdnd,v 1.8 2002/03/22 04:33:58 thorpej Exp $ # # PROVIDE: isdnd -# REQUIRE: NETWORK syslogd mountcritremote +# REQUIRE: NETWORKING syslogd mountcritremote +# BEFORE: SERVERS +# +# Note that this means that syslogd will not be listening on +# any isdn addresses. This is considered a feature. +# . /etc/rc.subr @@ -17,50 +22,3 @@ pidfile="/var/run/${name}.pid" load_rc_config $name run_rc_command "$1" - -if checkyesno isdnd && checkyesno isdn_autoupdown; then - - # The isdn network interfaces could not be marked UP in the - # ifconfig.* files, since the daemon wasn't available then. - # If we are doing start: now it's running, so figure which - # interfaces these applies to and UP them. If doing stop: - # down them (for symetry, and effectively they are down). - - case "$_arg" in - start) - ifflag="-d" - ifcmd="up" - ;; - stop) - ifflag="-u" - ifcmd="down" - ;; - *) - exit 0 - ;; - esac - - if [ -z "$isdn_interfaces" ]; then - # the user has not specified a list of interface - # to track isdnd - try to figure ourselfs - tmp=`ifconfig -l $ifflag` - for int in $tmp; do - # Check if the interface has been configured at all - # XXX - does this work with IPv6 ? - if ifconfig $int | fgrep inet >/dev/null; then - case $int in - isp*) - isdn_interfaces="$isdn_interfaces $int" - ;; - ipr*) - isdn_interfaces="$isdn_interfaces $int" - ;; - esac - fi - done - fi - for int in $isdn_interfaces; do - ifconfig $int $ifcmd - done -fi - |