install:
rm -rf $(BUILD_DIR)/root
$(MAKE) install-targets
+ @( \
+ cd $(BUILD_DIR)/root; \
+ for script in ./etc/init.d/*; do \
+ grep '#!/bin/sh /etc/rc.common' $$script >/dev/null || continue; \
+ IPKG_INSTROOT=$(BUILD_DIR)/root $(which bash) ./etc/rc.common $$script enable; \
+ done; \
+ )
index: $(PACKAGE_DIR)/Packages
+++ /dev/null
-#!/bin/sh /etc/rc.common
-# ADAM2 patcher for Netgear DG834 and compatible
-# Copyright (C) 2006 OpenWrt.org
-
-start() {
- MD5="$(md5sum /dev/mtdblock/0 | awk '{print $1}')"
- [ "$MD5" = "0530bfdf00ec155f4182afd70da028c1" ] && {
- mtd unlock adam2
- /sbin/adam2patcher /dev/mtdblock/0
- }
- rm -f /etc/init.d/S00adam2 /sbin/adam2patcher >&- 2>&-
-}
--- /dev/null
+#!/bin/sh /etc/rc.common
+# ADAM2 patcher for Netgear DG834 and compatible
+# Copyright (C) 2006 OpenWrt.org
+
+START=00
+start() {
+ MD5="$(md5sum /dev/mtdblock/0 | awk '{print $1}')"
+ [ "$MD5" = "0530bfdf00ec155f4182afd70da028c1" ] && {
+ mtd unlock adam2
+ /sbin/adam2patcher /dev/mtdblock/0
+ }
+ rm -f /etc/init.d/S00adam2 /sbin/adam2patcher >&- 2>&-
+}
+++ /dev/null
-#!/bin/sh /etc/rc.common
-# Copyright (C) 2006 OpenWrt.org
-
-start() {
- [ -e /etc/config/network ] && exit 0
-
- mkdir -p /etc/config
-
- (
- if grep -E 'mtd0: 000(6|a)0000' /proc/mtd 2>&- >&-; then
- # WGT634u
- echo boardtype=wgt634u
- else
- strings /dev/mtdblock/3
- fi
- ) | awk '
- function p(cfgname, name) {
- if (c[name] != "") print " option " cfgname " \"" c[name] "\""
- }
-
- BEGIN {
- FS="="
- c["lan_ifname"]="eth0.0"
- c["wan_ifname"]="eth0.1"
- c["vlan0ports"]="1 2 3 4 5*"
- c["vlan1ports"]="0 5"
- }
-
- ($1 == "boardnum") || ($1 == "boardtype") || ($1 == "boardflags") {
- nvram[$1] = $2
- }
-
- END {
- # v1 hardware
- if (nvram["boardtype"] == "bcm94710dev") {
- # Asus WL-500g
- if (nvram["boardnum"] == "asusX") {
- c["lan_ifname"]="eth0 eth1" # FIXME
- c["wan_ifname"]=""
- }
- }
- if (nvram["boardtype"] == "wgt634u") {
- c["vlan0ports"] = "0 1 2 3 5*"
- c["vlan1ports"] = "4 5"
- }
- if ((nvram["boardtype"] == "0x0467") || (nvram["boardtype"] == "0x042f")) {
- c["vlan0ports"] = "0 1 2 3 5*"
- c["vlan1ports"] = "4 5"
- }
-
- # WAP54G
- if ((nvram["boardnum"] == "2") || \
- (nvram["boardnum"] == "1024")) {
- c["lan_ifname"]="eth0"
- c["wan_ifname"]=""
- }
-
- print "#### VLAN configuration "
- print "config switch eth0"
- p("vlan0", "vlan0ports")
- p("vlan1", "vlan1ports")
- print ""
- print ""
- print "#### Loopback configuration"
- print "config interface loopback"
- print " option ifname \"lo\""
- print " option proto static"
- print " option ipaddr 127.0.0.1"
- print " option netmask 255.0.0.0"
- print ""
- print ""
- print "#### LAN configuration"
- print "config interface lan"
- print " option type bridge"
- p("ifname", "lan_ifname")
- print " option proto static"
- print " option ipaddr 192.168.1.1"
- print " option netmask 255.255.255.0"
- print ""
- print ""
- print "#### WAN configuration"
- print "config interface wan"
- p("ifname", "wan_ifname")
- print " option proto dhcp"
- }' > /etc/config/network
-}
--- /dev/null
+#!/bin/sh /etc/rc.common
+# Copyright (C) 2006 OpenWrt.org
+
+START=05
+
+start() {
+ [ -e /etc/config/network ] && exit 0
+
+ mkdir -p /etc/config
+
+ (
+ if grep -E 'mtd0: 000(6|a)0000' /proc/mtd 2>&- >&-; then
+ # WGT634u
+ echo boardtype=wgt634u
+ else
+ strings /dev/mtdblock/3
+ fi
+ ) | awk '
+ function p(cfgname, name) {
+ if (c[name] != "") print " option " cfgname " \"" c[name] "\""
+ }
+
+ BEGIN {
+ FS="="
+ c["lan_ifname"]="eth0.0"
+ c["wan_ifname"]="eth0.1"
+ c["vlan0ports"]="1 2 3 4 5*"
+ c["vlan1ports"]="0 5"
+ }
+
+ ($1 == "boardnum") || ($1 == "boardtype") || ($1 == "boardflags") {
+ nvram[$1] = $2
+ }
+
+ END {
+ # v1 hardware
+ if (nvram["boardtype"] == "bcm94710dev") {
+ # Asus WL-500g
+ if (nvram["boardnum"] == "asusX") {
+ c["lan_ifname"]="eth0 eth1" # FIXME
+ c["wan_ifname"]=""
+ }
+ }
+ if (nvram["boardtype"] == "wgt634u") {
+ c["vlan0ports"] = "0 1 2 3 5*"
+ c["vlan1ports"] = "4 5"
+ }
+ if ((nvram["boardtype"] == "0x0467") || (nvram["boardtype"] == "0x042f")) {
+ c["vlan0ports"] = "0 1 2 3 5*"
+ c["vlan1ports"] = "4 5"
+ }
+
+ # WAP54G
+ if ((nvram["boardnum"] == "2") || \
+ (nvram["boardnum"] == "1024")) {
+ c["lan_ifname"]="eth0"
+ c["wan_ifname"]=""
+ }
+
+ print "#### VLAN configuration "
+ print "config switch eth0"
+ p("vlan0", "vlan0ports")
+ p("vlan1", "vlan1ports")
+ print ""
+ print ""
+ print "#### Loopback configuration"
+ print "config interface loopback"
+ print " option ifname \"lo\""
+ print " option proto static"
+ print " option ipaddr 127.0.0.1"
+ print " option netmask 255.0.0.0"
+ print ""
+ print ""
+ print "#### LAN configuration"
+ print "config interface lan"
+ print " option type bridge"
+ p("ifname", "lan_ifname")
+ print " option proto static"
+ print " option ipaddr 192.168.1.1"
+ print " option netmask 255.255.255.0"
+ print ""
+ print ""
+ print "#### WAN configuration"
+ print "config interface wan"
+ p("ifname", "wan_ifname")
+ print " option proto dhcp"
+ }' > /etc/config/network
+}
+++ /dev/null
-#!/bin/sh /etc/rc.common
-# Copyright (C) 2006 OpenWrt.org
-
-start() {
- [ -e /etc/config/network ] && exit 0
-
- mkdir -p /etc/config
-
- (
- if grep -E 'mtd0: 000(6|a)0000' /proc/mtd 2>&- >&-; then
- # WGT634u
- echo boardtype=wgt634u
- else
- strings /dev/mtdblock/3
- fi
- ) | awk '
- function p(cfgname, name) {
- if (c[name] != "") print " option " cfgname " \"" c[name] "\""
- }
-
- BEGIN {
- FS="="
- c["lan_ifname"]="eth0.0"
- c["wan_ifname"]="eth0.1"
- c["vlan0ports"]="1 2 3 4 5*"
- c["vlan1ports"]="0 5"
- }
-
- ($1 == "boardnum") || ($1 == "boardtype") || ($1 == "boardflags") {
- nvram[$1] = $2
- }
-
- END {
- # v1 hardware
- if (nvram["boardtype"] == "bcm94710dev") {
- # Asus WL-500g
- if (nvram["boardnum"] == "asusX") {
- c["lan_ifname"]="eth0 eth1" # FIXME
- c["wan_ifname"]=""
- }
- }
- if (nvram["boardtype"] == "wgt634u") {
- c["vlan0ports"] = "0 1 2 3 5*"
- c["vlan1ports"] = "4 5"
- }
- if ((nvram["boardtype"] == "0x0467") || (nvram["boardtype"] == "0x042f")) {
- c["vlan0ports"] = "0 1 2 3 5*"
- c["vlan1ports"] = "4 5"
- }
-
- # WAP54G
- if ((nvram["boardnum"] == "2") || \
- (nvram["boardnum"] == "1024")) {
- c["lan_ifname"]="eth0"
- c["wan_ifname"]=""
- }
-
- print "#### VLAN configuration "
- print "config switch eth0"
- p("vlan0", "vlan0ports")
- p("vlan1", "vlan1ports")
- print ""
- print ""
- print "#### Loopback configuration"
- print "config interface loopback"
- print " option ifname \"lo\""
- print " option proto static"
- print " option ipaddr 127.0.0.1"
- print " option netmask 255.0.0.0"
- print ""
- print ""
- print "#### LAN configuration"
- print "config interface lan"
- print " option type bridge"
- p("ifname", "lan_ifname")
- print " option proto static"
- print " option ipaddr 192.168.1.1"
- print " option netmask 255.255.255.0"
- print ""
- print ""
- print "#### WAN configuration"
- print "config interface wan"
- p("ifname", "wan_ifname")
- print " option proto dhcp"
- }' > /etc/config/network
-}
--- /dev/null
+#!/bin/sh /etc/rc.common
+# Copyright (C) 2006 OpenWrt.org
+
+START=05
+start() {
+ [ -e /etc/config/network ] && exit 0
+
+ mkdir -p /etc/config
+
+ (
+ if grep -E 'mtd0: 000(6|a)0000' /proc/mtd 2>&- >&-; then
+ # WGT634u
+ echo boardtype=wgt634u
+ else
+ strings /dev/mtdblock/3
+ fi
+ ) | awk '
+ function p(cfgname, name) {
+ if (c[name] != "") print " option " cfgname " \"" c[name] "\""
+ }
+
+ BEGIN {
+ FS="="
+ c["lan_ifname"]="eth0.0"
+ c["wan_ifname"]="eth0.1"
+ c["vlan0ports"]="1 2 3 4 5*"
+ c["vlan1ports"]="0 5"
+ }
+
+ ($1 == "boardnum") || ($1 == "boardtype") || ($1 == "boardflags") {
+ nvram[$1] = $2
+ }
+
+ END {
+ # v1 hardware
+ if (nvram["boardtype"] == "bcm94710dev") {
+ # Asus WL-500g
+ if (nvram["boardnum"] == "asusX") {
+ c["lan_ifname"]="eth0 eth1" # FIXME
+ c["wan_ifname"]=""
+ }
+ }
+ if (nvram["boardtype"] == "wgt634u") {
+ c["vlan0ports"] = "0 1 2 3 5*"
+ c["vlan1ports"] = "4 5"
+ }
+ if ((nvram["boardtype"] == "0x0467") || (nvram["boardtype"] == "0x042f")) {
+ c["vlan0ports"] = "0 1 2 3 5*"
+ c["vlan1ports"] = "4 5"
+ }
+
+ # WAP54G
+ if ((nvram["boardnum"] == "2") || \
+ (nvram["boardnum"] == "1024")) {
+ c["lan_ifname"]="eth0"
+ c["wan_ifname"]=""
+ }
+
+ print "#### VLAN configuration "
+ print "config switch eth0"
+ p("vlan0", "vlan0ports")
+ p("vlan1", "vlan1ports")
+ print ""
+ print ""
+ print "#### Loopback configuration"
+ print "config interface loopback"
+ print " option ifname \"lo\""
+ print " option proto static"
+ print " option ipaddr 127.0.0.1"
+ print " option netmask 255.0.0.0"
+ print ""
+ print ""
+ print "#### LAN configuration"
+ print "config interface lan"
+ print " option type bridge"
+ p("ifname", "lan_ifname")
+ print " option proto static"
+ print " option ipaddr 192.168.1.1"
+ print " option netmask 255.255.255.0"
+ print ""
+ print ""
+ print "#### WAN configuration"
+ print "config interface wan"
+ p("ifname", "wan_ifname")
+ print " option proto dhcp"
+ }' > /etc/config/network
+}
+++ /dev/null
-#!/bin/sh /etc/rc.common
-# Copyright (C) 2006 OpenWrt.org
-
-start() {
- [ -f /proc/mounts ] || /sbin/mount_root
- [ -f /proc/jffs2_bbc ] && echo "S" > /proc/jffs2_bbc
- vconfig set_name_type DEV_PLUS_VID_NO_PAD
-
- HOSTNAME=${wan_hostname%%.*}
- echo ${HOSTNAME:=OpenWrt}>/proc/sys/kernel/hostname
-
- mkdir -p /var/run
- mkdir -p /var/log
- mkdir -p /var/lock
- touch /var/log/wtmp
- touch /var/log/lastlog
- [ "$FAILSAFE" = "true" ] && touch /tmp/.failsafe
-
- # manually trigger hotplug before loading modules
- for iface in $(awk -F: '/:/ {print $1}' /proc/net/dev); do
- /usr/bin/env -i ACTION=add INTERFACE="$iface" /sbin/hotplug net
- done
-
- load_modules /etc/modules /etc/modules.d/*
-}
+++ /dev/null
-#!/bin/sh /etc/rc.common
-# Copyright (C) 2006 OpenWrt.org
-
-start() {
- setup_switch() { return 0; }
-
- include /lib/network
- setup_switch
- [ -e /etc/config/wireless ] || \
- /sbin/wifi detect > /etc/config/wireless
- /sbin/wifi up
-}
-
+++ /dev/null
-#!/bin/sh /etc/rc.common
-# Copyright (C) 2006 OpenWrt.org
-
-start() {
- [ -d /www ] && httpd -p 80 -h /www -r OpenWrt
-}
-
-stop() {
- killall httpd
-}
+++ /dev/null
-#!/bin/sh /etc/rc.common
-# Copyright (C) 2006 OpenWrt.org
-
-start() {
- if awk -F: '/^root:/ && $2 !~ /\!/ {exit 1}' /etc/passwd 2>/dev/null; then telnetd -l /bin/login; fi
-}
-
-stop() {
- killall telnetd
-}
+++ /dev/null
-#!/bin/sh /etc/rc.common
-# Copyright (C) 2006 OpenWrt.org
-
-start () {
- mkdir -p /var/spool/cron
- ln -s /etc/crontabs /var/spool/cron/crontabs
- crond -c /etc/crontabs
-}
-
-stop() {
- killall crond
-}
--- /dev/null
+#!/bin/sh /etc/rc.common
+# Copyright (C) 2006 OpenWrt.org
+
+START=10
+start() {
+ [ -f /proc/mounts ] || /sbin/mount_root
+ [ -f /proc/jffs2_bbc ] && echo "S" > /proc/jffs2_bbc
+ vconfig set_name_type DEV_PLUS_VID_NO_PAD
+
+ HOSTNAME=${wan_hostname%%.*}
+ echo ${HOSTNAME:=OpenWrt}>/proc/sys/kernel/hostname
+
+ mkdir -p /var/run
+ mkdir -p /var/log
+ mkdir -p /var/lock
+ touch /var/log/wtmp
+ touch /var/log/lastlog
+ [ "$FAILSAFE" = "true" ] && touch /tmp/.failsafe
+
+ # manually trigger hotplug before loading modules
+ for iface in $(awk -F: '/:/ {print $1}' /proc/net/dev); do
+ /usr/bin/env -i ACTION=add INTERFACE="$iface" /sbin/hotplug net
+ done
+
+ load_modules /etc/modules /etc/modules.d/*
+}
--- /dev/null
+#!/bin/sh /etc/rc.common
+# Copyright (C) 2006 OpenWrt.org
+
+start () {
+ mkdir -p /var/spool/cron
+ ln -s /etc/crontabs /var/spool/cron/crontabs
+ crond -c /etc/crontabs
+}
+
+stop() {
+ killall crond
+}
--- /dev/null
+#!/bin/sh /etc/rc.common
+# Copyright (C) 2006 OpenWrt.org
+
+start() {
+ [ -d /www ] && httpd -p 80 -h /www -r OpenWrt
+}
+
+stop() {
+ killall httpd
+}
--- /dev/null
+#!/bin/sh /etc/rc.common
+# Copyright (C) 2006 OpenWrt.org
+
+START=40
+start() {
+ setup_switch() { return 0; }
+
+ include /lib/network
+ setup_switch
+ [ -e /etc/config/wireless ] || \
+ /sbin/wifi detect > /etc/config/wireless
+ /sbin/wifi up
+}
+
klogd
(
- for i in /etc/init.d/S*; do
- $i start 2>&1
+ for i in /etc/rc.d/S*; do
+ $i boot 2>&1
done
sysctl -p >&-
--- /dev/null
+#!/bin/sh /etc/rc.common
+# Copyright (C) 2006 OpenWrt.org
+
+start() {
+ if awk -F: '/^root:/ && $2 !~ /\!/ {exit 1}' /etc/passwd 2>/dev/null; then telnetd -l /bin/login; fi
+}
+
+stop() {
+ killall telnetd
+}
#!/bin/sh
-. /etc/functions.sh
+# Copyright (C) 2006 OpenWrt.org
+
+. $IPKG_INSTROOT/etc/functions.sh
+
+START=50
start() {
return 0
}
disable() {
- rm -f /etc/rc.d/${initscript##*/}
+ name="$(basename "${initscript}")"
+ rm -f "$IPKG_INSTROOT/etc/rc.d/S??$name"
}
enable() {
+ name="$(basename "${initscript}")"
disable
- ln -s /etc/init.d/${initscript##*/} /etc/rc.d/${initscript##*/}
+ ln -s "/etc/init.d/$name" "$IPKG_INSTROOT/etc/rc.d/S${START}${name##S[0-9][0-9]}"
}
depends() {
stop Stop the service
restart Restart the service
reload Reload configuration files (or restart if that fails)
+ enable Enable service autostart
+ disable Disable service autostart
$EXTRA_HELP
EOF
}
restart) restart;;
boot) boot;;
shutdown) shutdown;;
+ enable) enable;;
+ disable) disable;;
$cmds
*) help;;
esac"
install -m0755 -d $(1)/etc
install -m0644 ./files/dnsmasq.conf $(1)/etc/dnsmasq.conf
install -m0755 -d $(1)/etc/init.d
- install -m0755 ./files/dnsmasq.init $(1)/etc/init.d/S50dnsmasq
+ install -m0755 ./files/dnsmasq.init $(1)/etc/init.d/dnsmasq
endef
$(eval $(call BuildPackage,dnsmasq))
ln -sf ../sbin/dropbear $(1)/usr/bin/dbclient
ln -sf ../sbin/dropbear $(1)/usr/bin/dropbearkey
install -d -m0755 $(1)/etc/init.d
- install -m0755 ./files/dropbear.init $(1)/etc/init.d/S50dropbear
+ install -m0755 ./files/dropbear.init $(1)/etc/init.d/dropbear
endef
define Package/dropbearconvert/install
install -d -m0755 $(1)/etc/config
install -m0644 ./files/firewall.config $(1)/etc/config/firewall
install -d -m0755 $(1)/etc/init.d
- install -m0755 ./files/firewall.init $(1)/etc/init.d/S45firewall
+ install -m0755 ./files/firewall.init $(1)/etc/init.d/firewall
install -m0755 ./files/firewall.user $(1)/etc/
install -d -m0755 $(1)/usr/lib
install -m0644 ./files/firewall.awk $(1)/usr/lib
# Copyright (C) 2006 OpenWrt.org
## Please make changes in /etc/firewall.user
-
+START=45
start() {
include /lib/network
scan_interfaces
ifeq ($(findstring PCI,$(BUS)),PCI)
echo ath_pci >> $(1)/etc/modules.d/20-madwifi
endif
- install -m0755 ./files/madwifi.init $(1)/etc/init.d/S20madwifi
+ install -m0755 ./files/madwifi.init $(1)/etc/init.d/madwifi
$(CP) \
$(PKG_BUILD_DIR)/ath/ath_hal.$(LINUX_KMOD_SUFFIX) \
$(BUS_MODULES) \
#!/bin/sh /etc/rc.common
-start() {
+START=20
+boot() {
iwpriv ath0 mode 3
}
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
-PKG_INIT_PRIO:=60
-
include $(INCLUDE_DIR)/package.mk
define Package/openswan/Default
define Package/openswan/install
$(CP) $(PKG_INSTALL_DIR)/* $(1)
install -d -m0755 $(1)/etc/init.d
- $(CP) $(1)/etc/rc.d/init.d/ipsec $(1)/etc/init.d/S$(PKG_INIT_PRIO)ipsec
+ $(CP) ./files/ipsec.init $(1)/etc/init.d/ipsec
rm -rf $(1)/usr/share
rm -rf $(1)/usr/man
rm -rf $(1)/var
--- /dev/null
+#!/bin/sh /etc/rc.common
+# IPsec startup and shutdown script
+# Copyright (C) 1998, 1999, 2001 Henry Spencer.
+# Copyright (C) 2002 Michael Richardson <mcr@freeswan.org>
+# Copyright (C) 2006 OpenWrt.org
+#
+# This program is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by the
+# Free Software Foundation; either version 2 of the License, or (at your
+# option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+# for more details.
+#
+# RCSID $Id: setup.in,v 1.122.6.1 2005/07/25 19:17:03 ken Exp $
+#
+# ipsec init.d script for starting and stopping
+# the IPsec security subsystem (KLIPS and Pluto).
+#
+# This script becomes /etc/rc.d/init.d/ipsec (or possibly /etc/init.d/ipsec)
+# and is also accessible as "ipsec setup" (the preferred route for human
+# invocation).
+#
+# The startup and shutdown times are a difficult compromise (in particular,
+# it is almost impossible to reconcile them with the insanely early/late
+# times of NFS filesystem startup/shutdown). Startup is after startup of
+# syslog and pcmcia support; shutdown is just before shutdown of syslog.
+#
+# chkconfig: 2345 47 76
+# description: IPsec provides encrypted and authenticated communications; \
+# KLIPS is the kernel half of it, Pluto is the user-level management daemon.
+
+START=60
+script_init() {
+ me='ipsec setup' # for messages
+
+ # where the private directory and the config files are
+ IPSEC_EXECDIR="${IPSEC_EXECDIR-/usr/libexec/ipsec}"
+ IPSEC_LIBDIR="${IPSEC_LIBDIR-/usr/lib/ipsec}"
+ IPSEC_SBINDIR="${IPSEC_SBINDIR-/usr/sbin}"
+ IPSEC_CONFS="${IPSEC_CONFS-/etc}"
+
+ if test " $IPSEC_DIR" = " " # if we were not called by the ipsec command
+ then
+ # we must establish a suitable PATH ourselves
+ PATH="${IPSEC_SBINDIR}":/sbin:/usr/sbin:/usr/local/bin:/bin:/usr/bin
+ export PATH
+
+ IPSEC_DIR="$IPSEC_LIBDIR"
+ export IPSEC_DIR IPSEC_CONFS IPSEC_LIBDIR IPSEC_EXECDIR
+ fi
+
+ # Check that the ipsec command is available.
+ found=
+ for dir in `echo $PATH | tr ':' ' '`
+ do
+ if test -f $dir/ipsec -a -x $dir/ipsec
+ then
+ found=yes
+ break # NOTE BREAK OUT
+ fi
+ done
+ if ! test "$found"
+ then
+ echo "cannot find ipsec command -- \`$1' aborted" |
+ logger -s -p daemon.error -t ipsec_setup
+ exit 1
+ fi
+
+ # Pick up IPsec configuration (until we have done this, successfully, we
+ # do not know where errors should go, hence the explicit "daemon.error"s.)
+ # Note the "--export", which exports the variables created.
+ eval `ipsec _confread $config --optional --varprefix IPSEC --export --type config setup`
+
+ if test " $IPSEC_confreadstatus" != " "
+ then
+ case $1 in
+ stop|--stop|_autostop)
+ echo "$IPSEC_confreadstatus -- \`$1' may not work" |
+ logger -s -p daemon.error -t ipsec_setup;;
+
+ *) echo "$IPSEC_confreadstatus -- \`$1' aborted" |
+ logger -s -p daemon.error -t ipsec_setup;
+ exit 1;;
+ esac
+ fi
+
+ IPSEC_confreadsection=${IPSEC_confreadsection:-setup}
+ export IPSEC_confreadsection
+
+ IPSECsyslog=${IPSECsyslog-daemon.error}
+ export IPSECsyslog
+
+ # misc setup
+ umask 022
+
+ mkdir -p /var/run/pluto
+}
+
+script_command() {
+ if [ "${USER}" != "root" ]
+ then
+ echo "permission denied (must be superuser)" |
+ logger -s -p $IPSECsyslog -t ipsec_setup 2>&1
+ exit 1
+ fi
+ # make sure all required directories exist
+ if [ ! -d /var/run/pluto ]
+ then
+ mkdir -p /var/run/pluto
+ fi
+ if [ ! -d /var/lock/subsys ]
+ then
+ mkdir -p /var/lock/subsys
+ fi
+ tmp=/var/run/pluto/ipsec_setup.st
+ outtmp=/var/run/pluto/ipsec_setup.out
+ (
+ ipsec _realsetup $1
+ echo "$?" >$tmp
+ ) > ${outtmp} 2>&1
+ st=$?
+ if test -f $tmp
+ then
+ st=`cat $tmp`
+ rm -f $tmp
+ fi
+ if [ -f ${outtmp} ]; then
+ cat ${outtmp} | logger -s -p $IPSECsyslog -t ipsec_setup 2>&1
+ rm -f ${outtmp}
+ fi
+}
+
+
+start() {
+ script_init start "$@"
+ script_command start "$@"
+}
+
+stop() {
+ script_init stop "$@"
+ script_command stop "$@"
+}
+
+restart() {
+ script_init stop "$@"
+ script_command stop "$@"
+ script_command start "$@"
+}
+
+status() {
+ script_init status "$@"
+ ipsec _realsetup status
+}
+EXTRA_COMMANDS=status
+EXTRA_HELP=" status Show the status of the service"
+++ /dev/null
-#!/bin/sh /etc/rc.common
-# Copyright (C) 2006 OpenWrt.org
-
-boot() {
- /usr/lib/qos.sh firewall | sh
-}
-
-start() {
-# FIXME: after init script migration
-# qos-start
-#
-
- boot
-}
-
-stop() {
- qos-stop
-}
--- /dev/null
+#!/bin/sh /etc/rc.common
+# Copyright (C) 2006 OpenWrt.org
+
+START=50
+
+boot() {
+ /usr/lib/qos.sh firewall | sh
+}
+
+start() {
+ qos-start
+}
+
+stop() {
+ qos-stop
+}