Fix pid writing with olsrd (#1480)
[openwrt/svn-archive/archive.git] / net / olsrd / files / olsrd.init
index 3cdd6ae1597ae42340aee08944956c60c2a008a4..572ea9e1131da1030cd490760ee0b091baa43140 100644 (file)
@@ -1,11 +1,21 @@
 #!/bin/sh /etc/rc.common
 # Copyright (C) 2006 OpenWrt.org
 
+BIN=olsrd
 DEFAULT=/etc/default/olsrd
+RUN_D=/var/run
+PID_F=$RUN_D/$BIN.pid
 
 start() {
        [ -f $DEFAULT ] && . $DEFAULT
-       olsrd $OPTIONS
+       $BIN -nofork $OPTIONS &
+       
+       # write pid file (but strip out own pid ($$))
+       mkdir -p $RUN_D
+       PID=`pidof $BIN`
+       echo ${PID%$$} > $PID_F
+
+
 }
 
 stop() {