diff options
Diffstat (limited to 'etc/rc.d/isdnd')
-rw-r--r-- | etc/rc.d/isdnd | 118 |
1 files changed, 49 insertions, 69 deletions
diff --git a/etc/rc.d/isdnd b/etc/rc.d/isdnd index a3d3e54..4983256 100644 --- a/etc/rc.d/isdnd +++ b/etc/rc.d/isdnd @@ -1,41 +1,34 @@ #!/bin/sh # -# Copyright (c) 1999 Hellmuth Michaelis -# 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. -# +# $NetBSD: isdnd,v 1.9 2002/04/10 23:37:13 martin Exp $ # $FreeBSD$ # - -#--------------------------------------------------------------------------- +# Mostly based on original script (/etc/rc.isdn) written by Hellmuth Michaelis # -# /etc/rc.isdn - isdn4bsd startup script -# -------------------------------------- -# -#--------------------------------------------------------------------------- -case ${isdn_enable} in -[Yy][Ee][Ss]) +# PROVIDE: isdnd +# REQUIRE: NETWORKING syslogd mountcritremote +# BEFORE: SERVERS +# KEYWORD: FreeBSD NetBSD + +. /etc/rc.subr + +name="isdnd" +rcvar=`set_rcvar isdn` +pidfile="/var/run/${name}.pid" + +case `${CMD_OSTYPE}` in +FreeBSD) + start_cmd="isdnd_start" + ;; +NetBSD) + command="/usr/sbin/${name}" + required_files="/etc/isdn/${name}.rc" + ;; +esac + +isdnd_start() +{ echo -n 'ISDN subsystem setup:' # Check for pcvt driver (VT100/VT220 emulator) @@ -48,49 +41,36 @@ case ${isdn_enable} in fi fi - case ${isdn_flags} in - [Nn][Oo]) - isdn_flags='' - ;; - esac - - # Start the isdn daemon + # Start isdnd # - if [ -x /usr/sbin/isdnd ]; then - echo -n ' isdnd' - case ${isdn_fsdev} in - [Nn][Oo] | '') - /usr/sbin/isdnd ${isdn_flags} + echo -n ' isdnd' + case ${isdn_fsdev} in + [Nn][Oo] | '') + /usr/sbin/isdnd ${isdn_flags} + ;; + *) + # Change vidmode of ${isdn_fsdev} + # + case ${isdn_screenflags} in + [Nn][Oo]) ;; *) - # Change vidmode of ${isdn_fsdev} - # - case ${isdn_screenflags} in - [Nn][Oo]) - ;; - *) - if [ -x /usr/sbin/vidcontrol ]; then - /usr/sbin/vidcontrol < ${isdn_fsdev} > ${isdn_fsdev} 2>&1 ${isdn_screenflags} - fi - ;; - esac - - /usr/sbin/isdnd ${isdn_flags} -f -r ${isdn_fsdev} -t ${isdn_ttype} + /usr/sbin/vidcontrol < ${isdn_fsdev} > ${isdn_fsdev} 2>&1 ${isdn_screenflags} ;; esac - fi - # Start isdntrace - # - case ${isdn_trace} in - [Yy][Ee][Ss]) - if [ -x /usr/sbin/isdntrace ]; then - echo -n ' isdntrace' - nohup /usr/sbin/isdntrace ${isdn_traceflags} >/dev/null 2>&1 & - fi + /usr/sbin/isdnd ${isdn_flags} -f -r ${isdn_fsdev} -t ${isdn_ttype} ;; esac - echo '.' - ;; -esac + # Start isdntrace + # + if checkyesno isdn_trace ; then + echo -n ' isdntrace' + nohup /usr/sbin/isdntrace ${isdn_traceflags} >/dev/null 2>&1 & + echo '.' + fi +} + +load_rc_config $name +run_rc_command "$1" |