diff options
Diffstat (limited to 'sh')
| -rw-r--r-- | sh/gendepends.sh.in | 42 | ||||
| -rw-r--r-- | sh/net.sh.in | 10 | ||||
| -rw-r--r-- | sh/runscript.sh.in | 37 | 
3 files changed, 48 insertions, 41 deletions
| diff --git a/sh/gendepends.sh.in b/sh/gendepends.sh.in index c80508d9..8ab50ad2 100644 --- a/sh/gendepends.sh.in +++ b/sh/gendepends.sh.in @@ -7,25 +7,25 @@  . @PREFIX@/@SYSCONFDIR@/init.d/functions.sh  config() { -	[ -n "$*" ] && echo "${SVCNAME} config $*" >&3 +	[ -n "$*" ] && echo "${RC_SVCNAME} config $*" >&3  }  need() { -	[ -n "$*" ] && echo "${SVCNAME} ineed $*" >&3 +	[ -n "$*" ] && echo "${RC_SVCNAME} ineed $*" >&3  }  use() { -	[ -n "$*" ] && echo "${SVCNAME} iuse $*" >&3 +	[ -n "$*" ] && echo "${RC_SVCNAME} iuse $*" >&3  }  before() { -	[ -n "$*" ] && echo "${SVCNAME} ibefore $*" >&3 +	[ -n "$*" ] && echo "${RC_SVCNAME} ibefore $*" >&3  }  after() { -	[ -n "$*" ] && echo "${SVCNAME} iafter $*" >&3 +	[ -n "$*" ] && echo "${RC_SVCNAME} iafter $*" >&3  }  provide() { -	[ -n "$*" ] && echo "${SVCNAME} iprovide $*" >&3 +	[ -n "$*" ] && echo "${RC_SVCNAME} iprovide $*" >&3  }  keyword() { -	[ -n "$*" ] && echo "${SVCNAME} keyword $*" >&3 +	[ -n "$*" ] && echo "${RC_SVCNAME} keyword $*" >&3  }  depend() {  	: @@ -47,35 +47,39 @@ do  	_done_dirs="${_done_dirs} ${_dir}"  	cd "${_dir}" -	for SVCNAME in *; do -		[ -x "${SVCNAME}" ] || continue +	for RC_SERVICE in *; do +		[ -x "${RC_SERVICE}" ] || continue  		# Only generate dependencies for runscripts -		read one two < "${SVCNAME}" +		read one two < "${RC_SERVICE}"  		[ "${one}" = "#!@PREFIX@/sbin/runscript" ] || continue  		unset one two -		export SVCNAME=${SVCNAME##*/} +		export RC_SVCNAME=${RC_SERVICE##*/} + +		# Compat +		export SVCNAME=${RC_SVCNAME} +  		(  		# Save stdout in fd3, then remap it to stderr  		exec 3>&1 1>&2 -		_rc_c=${SVCNAME%%.*} -		if [ -n "${_rc_c}" -a "${_rc_c}" != "${SVCNAME}" ]; then +		_rc_c=${RC_SVCNAME%%.*} +		if [ -n "${_rc_c}" -a "${_rc_c}" != "${RC_SVCNAME}" ]; then  			if [ -e "${_dir}/../conf.d/${_rc_c}" ]; then  				. "${_dir}/../conf.d/${_rc_c}"  			fi  		fi  		unset _rc_c -		if [ -e "${_dir}/../conf.d/${SVCNAME}" ]; then -			. "${_dir}/../conf.d/${SVCNAME}" +		if [ -e "${_dir}/../conf.d/${RC_SVCNAME}" ]; then +			. "${_dir}/../conf.d/${RC_SVCNAME}"  		fi  		[ -e @PREFIX@/@SYSCONFDIR@/rc.conf ] && . @PREFIX@/@SYSCONFDIR@/rc.conf -		if . "${_dir}/${SVCNAME}"; then -			echo "${SVCNAME}" >&3 +		if . "${_dir}/${RC_SVCNAME}"; then +			echo "${RC_SVCNAME}" >&3  			depend  			# Add any user defined depends @@ -85,9 +89,9 @@ do  				IFS=:  				set -- ${_deptype}  				unset IFS -				eval _depends=\$rc_$(shell_var "${SVCNAME}")_$1 +				eval _depends=\$rc_$(shell_var "${RC_SVCNAME}")_$1  				[ -z "${_depends}" ] && eval _depends=\$rc_$1 -				[ -z "${_depends}" ] && eval _depends=\$RC_$(shell_var "${SVCNAME}")_$2 +				[ -z "${_depends}" ] && eval _depends=\$RC_$(shell_var "${RC_SVCNAME}")_$2  				[ -z "${_depends}" ] && eval _depends=\$RC_$2  				$1 ${_depends} diff --git a/sh/net.sh.in b/sh/net.sh.in index 1ad99983..8b03affc 100644 --- a/sh/net.sh.in +++ b/sh/net.sh.in @@ -15,7 +15,7 @@ __IFS="  "  depend()  { -	local IFACE=${SVCNAME#*.} +	local IFACE=${RC_SVCNAME#*.}  	local IFVAR=$(shell_var "${IFACE}")  	need localmount @@ -335,7 +335,7 @@ _load_modules()  		# Now load and wrap our functions  		if ! . "${MODULESDIR}/${mod}.sh"; then -			eend 1 "${SVCNAME}: error loading module \`${mod}'" +			eend 1 "${RC_SVCNAME}: error loading module \`${mod}'"  			exit 1  		fi @@ -447,7 +447,7 @@ _load_config()  start()  { -	local IFACE=${SVCNAME#*.} oneworked=false module= +	local IFACE=${RC_SVCNAME#*.} oneworked=false module=  	local IFVAR=$(shell_var "${IFACE}") cmd= our_metric=  	local metric=0 @@ -487,7 +487,7 @@ start()  	if ! _wait_for_carrier; then  		if service_started devd; then  			ewarn "no carrier, but devd will start us when we have one" -			mark_service_inactive "${SVCNAME}" +			mark_service_inactive "${RC_SVCNAME}"  		else  			eerror "no carrier"  		fi @@ -617,7 +617,7 @@ ${routes}"  stop()  { -	local IFACE=${SVCNAME#*.} module= +	local IFACE=${RC_SVCNAME#*.} module=  	local IFVAR=$(shell_var "${IFACE}") opts=  	einfo "Bringing down interface ${IFACE}" diff --git a/sh/runscript.sh.in b/sh/runscript.sh.in index 0df0aa0e..51777fae 100644 --- a/sh/runscript.sh.in +++ b/sh/runscript.sh.in @@ -14,20 +14,23 @@ if [ -r /sbin/livecd-functions.sh ]; then  fi  if [ -z "$1" -o -z "$2" ]; then -	eerror "${SVCNAME}: not enough arguments" +	eerror "${RC_SVCNAME}: not enough arguments"  	exit 1  fi  # So daemons know where to recall us if needed  export RC_SERVICE="$1" +# Compat +export SVCNAME=${RC_SVCNAME} +  # Descript the init script to the user  describe()  {  	if [ -n "${description}" ]; then  		einfo "${description}"  	else -		ewarn "No description for ${SVCNAME}" +		ewarn "No description for ${RC_SVCNAME}"  	fi  	local svc= desc= @@ -45,8 +48,8 @@ yesno ${RC_DEBUG} && set -x  _conf_d=${1%/*}/../conf.d  # If we're net.eth0 or openvpn.work then load net or openvpn config -_c=${SVCNAME%%.*} -if [ -n "${_c}" -a "${_c}" != "${SVCNAME}" ]; then +_c=${RC_SVCNAME%%.*} +if [ -n "${_c}" -a "${_c}" != "${RC_SVCNAME}" ]; then  	if [ -e "${_conf_d}/${_c}.${RC_RUNLEVEL}" ]; then  		. "${_conf_d}/${_c}.${RC_RUNLEVEL}"  	elif [ -e "${_conf_d}/${_c}" ]; then @@ -56,10 +59,10 @@ fi  unset _c  # Overlay with our specific config -if [ -e "${_conf_d}/${SVCNAME}.${RC_RUNLEVEL}" ]; then -	. "${_conf_d}/${SVCNAME}.${RC_RUNLEVEL}" -elif [ -e "${_conf_d}/${SVCNAME}" ]; then -	. "${_conf_d}/${SVCNAME}" +if [ -e "${_conf_d}/${RC_SVCNAME}.${RC_RUNLEVEL}" ]; then +	. "${_conf_d}/${RC_SVCNAME}.${RC_RUNLEVEL}" +elif [ -e "${_conf_d}/${RC_SVCNAME}" ]; then +	. "${_conf_d}/${RC_SVCNAME}"  fi  unset _conf_d @@ -75,7 +78,7 @@ shift  for _d in ${required_dirs}; do  	if [ ! -d ${_d} ]; then -		eerror "${SVCNAME}: \`${_d}' is not a directory" +		eerror "${RC_SVCNAME}: \`${_d}' is not a directory"  		exit 1  	fi  done @@ -83,7 +86,7 @@ unset _d  for _f in ${required_files}; do  	if [ ! -r ${_f} ]; then -		eerror "${SVCNAME}: \`${_f}' is not readable" +		eerror "${RC_SVCNAME}: \`${_f}' is not readable"  		exit 1  	fi  done @@ -94,7 +97,7 @@ if [ -n "${command}" ]; then  	if ! type start >/dev/null 2>&1; then  		start() {  			local _background= -			ebegin "Starting ${name:-${SVCNAME}}" +			ebegin "Starting ${name:-${RC_SVCNAME}}"  			if yesno "${command_background}"; then   				_background="--background --pidfile"  			fi @@ -109,7 +112,7 @@ if [ -n "${command}" ]; then  				${pidfile:+--pidfile} ${pidfile} \  				${_background} ${start_stop_daemon_args} \  				-- ${command_args} -			eend $? "Failed to start ${SVCNAME}" && return 0 +			eend $? "Failed to start ${RC_SVCNAME}" && return 0  			if yesno "${start_inactive}"; then  				if ! ${_inactive}; then  			   		mark_service_stopped @@ -125,12 +128,12 @@ fi  if [ -n "${command}" -o -n "${procname}" -o -n "${pidfile}" ]; then  	if ! type stop >/dev/null 2>&1; then  		stop() { -			ebegin "Stopping ${name:-${SVCNAME}}" +			ebegin "Stopping ${name:-${RC_SVCNAME}}"  			start-stop-daemon --stop \  				${command:+--exec} ${command} \  				${procname:+--name} ${procname} \  				${pidfile:+--pidfile} ${pidfile} -			eend $? "Failed to stop ${SVCNAME}" +			eend $? "Failed to stop ${RC_SVCNAME}"  		}  	fi  fi @@ -159,7 +162,7 @@ while [ -n "$1" ]; do  				for _cmd in ${extra_started_commands}; do  					if [ "${_cmd}" = "$1" ]; then  						if ! service_started; then -							eerror "${SVCNAME}: cannot \`$1' as it has not been started" +							eerror "${RC_SVCNAME}: cannot \`$1' as it has not been started"  							exit 1  						fi  					fi @@ -179,12 +182,12 @@ while [ -n "$1" ]; do  					shift  					continue 2  				else -					eerror "${SVCNAME}: function \`$1' defined but does not exist" +					eerror "${RC_SVCNAME}: function \`$1' defined but does not exist"  					exit 1  				fi  			fi	  		fi  	done -	eerror "${SVCNAME}: unknown function \`$1'" +	eerror "${RC_SVCNAME}: unknown function \`$1'"  	exit 1  done | 
