From e658ac6c8fa096045a8c05ad20a90afce2d66015 Mon Sep 17 00:00:00 2001 From: Roy Marples Date: Thu, 27 Dec 2007 20:41:08 +0000 Subject: [PATCH] Add a license and do more quoting --- etc.BSD/rc.devd | 35 ++++++++++++++++++++++++++++++----- 1 file changed, 30 insertions(+), 5 deletions(-) diff --git a/etc.BSD/rc.devd b/etc.BSD/rc.devd index 38425a1f..d394415f 100644 --- a/etc.BSD/rc.devd +++ b/etc.BSD/rc.devd @@ -1,17 +1,41 @@ #!/bin/sh +# Copyright 2007 Roy Marples +# 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. + +# Inform RC that we are in the background and hotplugged export IN_BACKGROUND=yes export IN_HOTPLUG=yes getmedia() { - ifconfig $1 | while read line; do - case ${line} in + ifconfig "$1" | while read line; do + case "${line}" in media:" "*) echo "${line}"; return;; esac done } -set -x +# Try and create an init script for network interfaces if [ ! -e /etc/init.d/"$1" ]; then base=$(basename ${1%%.*}) if [ "${base}" = "net" ]; then @@ -20,8 +44,9 @@ if [ ! -e /etc/init.d/"$1" ]; then base="net.lo0" fi if [ -e /etc/init.d/"${base}" -a "${base}" != "$1" ]; then - ln -s "${base}" /etc/init.d/$1 + ln -s "${base}" /etc/init.d/"$1" fi fi -exec /etc/init.d/$1 $2 +# Run the init script +exec /etc/init.d/"$1" "$2"