2 # Copyright (C) 2006-2012 OpenWrt.org
4 .
$IPKG_INSTROOT/lib
/functions.sh
5 .
$IPKG_INSTROOT/lib
/functions
/service.sh
39 name
="$(basename "${initscript}")"
40 rm -f "$IPKG_INSTROOT"/etc
/rc.d
/S??
$name
41 rm -f "$IPKG_INSTROOT"/etc
/rc.d
/K??
$name
46 name
="$(basename "${initscript}")"
48 ln -sf "../init.d/$name" "$IPKG_INSTROOT/etc/rc.d/S${START}${name##S[0-9][0-9]}" && \
51 ln -sf "../init.d/$name" "$IPKG_INSTROOT/etc/rc.d/K${STOP}${name##K[0-9][0-9]}" && \
57 name
="$(basename "${initscript}")"
58 [ -x "$IPKG_INSTROOT/etc/rc.d/S${START}${name##S[0-9][0-9]}" ]
66 ALL_COMMANDS
="boot shutdown depends"
71 local extra
="$(printf "%-16s%s
" "${cmd}" "${help}")"
72 ALL_HELP
="${ALL_HELP}\t${extra}\n"
73 ALL_COMMANDS
="${ALL_COMMANDS} ${cmd}"
78 Syntax: $initscript [command]
103 local service
="${1:-$(basename $initscript)}"
104 local instance
="${2:-*}"
105 procd_running
"$service" "$instance" "$@"
108 ${INIT_TRACE:+set -x}
110 extra_command
"start" "Start the service"
111 extra_command
"stop" "Stop the service"
112 extra_command
"restart" "Restart the service"
113 extra_command
"reload" "Reload configuration files (or restart if service does not implement reload)"
114 extra_command
"enable" "Enable service autostart"
115 extra_command
"disable" "Disable service autostart"
116 extra_command
"enabled" "Check if service is started on boot"
120 [ -n "$USE_PROCD" ] && {
121 extra_command
"running" "Check if service is running"
122 extra_command
"status" "Service status"
123 extra_command
"trace" "Start with syscall trace"
125 .
$IPKG_INSTROOT/lib
/functions
/procd.sh
126 basescript
=$
(readlink
"$initscript")
129 [ -n "$2" ] && method
="add"
130 procd_open_service
"$(basename ${basescript:-$initscript})" "$initscript"
132 procd_close_service
"$method"
136 rc_procd start_service
"$@"
137 if eval "type service_started" 2>/dev
/null
>/dev
/null
; then
150 procd_kill
"$(basename ${basescript:-$initscript})" "$1"
151 if eval "type service_stopped" 2>/dev
/null
>/dev
/null
; then
157 if eval "type reload_service" 2>/dev
/null
>/dev
/null
; then
170 if eval "type status_service" 2>/dev
/null
>/dev
/null
; then
173 _procd_status
"$(basename ${basescript:-$initscript})" "$1"
178 ALL_COMMANDS
="${ALL_COMMANDS} ${EXTRA_COMMANDS}"
179 ALL_HELP
="${ALL_HELP}${EXTRA_HELP}"
180 list_contains ALL_COMMANDS
"$action" || action
=help