olsrd: migrate init script to procd

* rename config generation script to olsrd.sh
* migrate olsrd4.init and olsrd6.init to procd
This commit is contained in:
Nico Geyso 2015-02-04 12:02:56 +01:00 committed by Lars Gierth
parent f174a865a9
commit 3ab33c8752
4 changed files with 25 additions and 41 deletions

View file

@ -172,7 +172,7 @@ endef
define Package/olsrd/install define Package/olsrd/install
$(INSTALL_DIR) $(1)/lib/functions $(INSTALL_DIR) $(1)/lib/functions
$(INSTALL_DATA) ./files/olsrd.init $(1)/lib/functions/olsrd.sh $(INSTALL_DATA) ./files/olsrd.sh $(1)/lib/functions/olsrd.sh
$(INSTALL_DIR) $(1)/etc/config $(INSTALL_DIR) $(1)/etc/config
$(INSTALL_DATA) ./files/olsrd.config $(1)/etc/config/olsrd $(INSTALL_DATA) ./files/olsrd.config $(1)/etc/config/olsrd
$(INSTALL_DATA) ./files/olsrd6.config $(1)/etc/config/olsrd6 $(INSTALL_DATA) ./files/olsrd6.config $(1)/etc/config/olsrd6

View file

@ -1,10 +1,5 @@
#!/bin/sh /etc/rc.common #!/bin/sh /etc/rc.common
# Copyright (C) 2008-2013 OpenWrt.org # Copyright (C) 2008-2015 OpenWrt.org
START=65
SERVICE_DAEMONIZE=1
SERVICE_WRITE_PID=1
OLSRD_OLSRD_SCHEMA='ignore:internal config_file:internal DebugLevel=0 AllowNoInt=yes' OLSRD_OLSRD_SCHEMA='ignore:internal config_file:internal DebugLevel=0 AllowNoInt=yes'
OLSRD_IPCCONNECT_SCHEMA='ignore:internal Host:list Net:list2' OLSRD_IPCCONNECT_SCHEMA='ignore:internal Host:list Net:list2'
@ -752,7 +747,7 @@ olsrd_setup_smartgw_rules() {
fi fi
} }
start() { olsrd_generate_config() {
SYSTEM_HOSTNAME= SYSTEM_HOSTNAME=
SYSTEM_LAT= SYSTEM_LAT=
SYSTEM_LON= SYSTEM_LON=
@ -784,23 +779,4 @@ start() {
fi fi
[ -z "$OLSRD_CONFIG_FILE" ] && return 1 [ -z "$OLSRD_CONFIG_FILE" ] && return 1
SERVICE_PID_FILE="$PID"
if service_check /usr/sbin/olsrd; then
error "there is already an instance of $UCI_CONF_NAME running (pid: '$(cat $PID)'), not starting."
return 1
else
service_start /usr/sbin/olsrd -f "$OLSRD_CONFIG_FILE" -nofork
sleep 1
service_check /usr/sbin/olsrd || {
log "startup-error: check via: '/usr/sbin/olsrd -f \"$OLSRD_CONFIG_FILE\" -nofork'"
}
fi
olsrd_setup_smartgw_rules
}
stop() {
SERVICE_PID_FILE="$PID"
service_stop /usr/sbin/olsrd
} }

View file

@ -1,14 +1,18 @@
#!/bin/sh /etc/rc.common #!/bin/sh /etc/rc.common
# Copyright (C) 2008-2013 OpenWrt.org # Copyright (C) 2008-2015 OpenWrt.org
. $IPKG_INSTROOT/lib/functions/olsrd.sh . $IPKG_INSTROOT/lib/functions/olsrd.sh
START=65 START=65
USE_PROCD=1
SERVICE_DAEMONIZE=1
SERVICE_WRITE_PID=1
CONF=/var/etc/olsrd.conf CONF=/var/etc/olsrd.conf
PID=/var/run/olsrd.pid
UCI_CONF_NAME=olsrd UCI_CONF_NAME=olsrd
start_service() {
procd_open_instance
procd_set_param command /usr/sbin/olsrd -f $CONF -nofork
procd_set_param respawn
procd_close_instance
olsrd_setup_smartgw_rules
}

View file

@ -1,14 +1,18 @@
#!/bin/sh /etc/rc.common #!/bin/sh /etc/rc.common
# Copyright (C) 2008-2013 OpenWrt.org # Copyright (C) 2008-2015 OpenWrt.org
. $IPKG_INSTROOT/lib/functions/olsrd.sh . $IPKG_INSTROOT/lib/functions/olsrd.sh
START=65 START=65
USE_PROCD=1
SERVICE_DAEMONIZE=1
SERVICE_WRITE_PID=1
CONF=/var/etc/olsrd6.conf CONF=/var/etc/olsrd6.conf
PID=/var/run/olsrd6.pid
UCI_CONF_NAME=olsrd6 UCI_CONF_NAME=olsrd6
start_service() {
procd_open_instance
procd_set_param command /usr/sbin/olsrd -f $CONF -nofork
procd_set_param respawn
procd_close_instance
olsrd_setup_smartgw_rules
}