Просмотр исходного кода

Update packages to provide properly working initialization scripts. These have been tested with embedded PowerPC systems.

"Steven J. Hill" 18 лет назад
Родитель
Сommit
2f2492f7f1
4 измененных файлов с 62 добавлено и 34 удалено
  1. 44 0
      package/portmap/init-portmap
  2. 3 1
      package/portmap/portmap.mk
  3. 13 31
      package/tftpd/init-tftpd
  4. 2 2
      package/tftpd/tftpd.mk

+ 44 - 0
package/portmap/init-portmap

@@ -0,0 +1,44 @@
+#! /bin/sh
+
+[ -f /sbin/portmap ] || exit 0
+
+start() {
+	echo -n "Starting portmap: "
+	portmap
+	mkdir -p /var/lock/subsys
+	touch /var/lock/subsys/portmap
+	echo "done"
+}
+
+
+stop() {
+        echo -n "Stopping portmap: "
+	echo
+        killall portmap
+        rm -rf /var/lock/subsys
+	echo "done"
+}
+
+restart() {
+	stop
+	start
+	rm -f /var/run/portmap.state
+}
+
+# See how we were called.
+case "$1" in
+  start)
+	start
+	;;
+  stop)
+	stop
+	;;
+  restart|reload)
+	restart
+	;;
+  *)
+	echo "Usage: $0 {start|stop|reload|restart}"
+	exit 1
+esac
+
+exit $?

+ 3 - 1
package/portmap/portmap.mk

@@ -25,12 +25,14 @@ $(PORTMAP_DIR)/$(PORTMAP_BINARY): $(PORTMAP_DIR)/.unpacked
 	$(MAKE) CC=$(TARGET_CC) O="$(TARGET_CFLAGS)" -C $(PORTMAP_DIR)
 
 $(TARGET_DIR)/$(PORTMAP_TARGET_BINARY): $(PORTMAP_DIR)/$(PORTMAP_BINARY)
-	install -D $(PORTMAP_DIR)/$(PORTMAP_BINARY) $(TARGET_DIR)/$(PORTMAP_TARGET_BINARY)
+	$(INSTALL) -D $(PORTMAP_DIR)/$(PORTMAP_BINARY) $(TARGET_DIR)/$(PORTMAP_TARGET_BINARY)
+	$(INSTALL) -m 0755 -D package/portmap/init-portmap $(TARGET_DIR)/etc/init.d/S13portmap
 
 portmap: uclibc $(TARGET_DIR)/$(PORTMAP_TARGET_BINARY)
 
 portmap-clean:
 	rm -f $(TARGET_DIR)/$(PORTMAP_TARGET_BINARY)
+	rm -f $(TARGET_DIR)/etc/init.d/S13portmap
 	-$(MAKE) -C $(PORTMAP_DIR) clean
 
 portmap-dirclean:

+ 13 - 31
package/tftpd/init-tftpd

@@ -1,18 +1,6 @@
 #! /bin/sh
-#
-# Author:	Jaakko Niemi <liiwi@iki.fi>
-# Modified from skeleton file in sarge
-
-
-
-
-
-#Defaults for tftpd-hpa
-RUN_DAEMON="yes"
-OPTIONS="-l -s /var/lib/tftpboot"
-
-
 
+OPTIONS="-c -l -s /var/lib/tftpboot"
 
 set -e
 
@@ -23,46 +11,40 @@ DAEMON=/usr/sbin/$NAME
 PIDFILE=/var/run/$NAME.pid
 SCRIPTNAME=/etc/init.d/S80tftpd-hpa
 
-# Gracefully exit if the package has been removed.
-test -x $DAEMON || exit 0
-
-
-if [ "$RUN_DAEMON" != "yes" ] ; then
-         echo "tftpd-hpa disabled in /etc/init.d/S80tftpd-hpa"
-	 exit 0
-fi
-
 #
 #	Function that starts the daemon/service.
 #
 d_start() {
-	start-stop-daemon --start --quiet --exec $DAEMON -- $OPTIONS
+	mkdir -p /var/lib/tftpboot
+	chmod 1777 /var/lib/tftpboot
+	$DAEMON $OPTIONS
 }
 
 #
 #	Function that stops the daemon/service.
 #
 d_stop() {
-	start-stop-daemon --stop --quiet --name $NAME
+	killall -q $NAME
 }
 
 #
 #	Function that sends a SIGHUP to the daemon/service.
 #
 d_reload() {
-	start-stop-daemon --stop --quiet --name $NAME --signal 1
+	d_start
+	d_stop
 }
 
 case "$1" in
   start)
-	echo -n "Starting $DESC: $NAME"
+	echo -n "Starting $DESC: "
 	d_start
-	echo "."
+	echo "done"
 	;;
   stop)
-	echo -n "Stopping $DESC: $NAME"
+	echo -n "Stopping $DESC: "
 	d_stop
-	echo "."
+	echo "done"
 	;;
   #reload)
 	#
@@ -83,11 +65,11 @@ case "$1" in
 	#	option to the "reload" entry above. If not, "force-reload" is
 	#	just the same as "restart".
 	#
-	echo -n "Restarting $DESC: $NAME"
+	echo -n "Restarting $DESC: "
 	d_stop
 	sleep 1
 	d_start
-	echo "."
+	echo "done"
 	;;
   *)
 	# echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2

+ 2 - 2
package/tftpd/tftpd.mk

@@ -56,13 +56,13 @@ $(TARGET_DIR)/$(TFTP_HPA_TARGET_BINARY): $(TFTP_HPA_DIR)/$(TFTP_HPA_BINARY)
 	    set -x; \
 	    rm -f $(TARGET_DIR)/$(TFTP_HPA_TARGET_BINARY); \
 	    cp -a $(TFTP_HPA_DIR)/$(TFTP_HPA_BINARY) $(TARGET_DIR)/$(TFTP_HPA_TARGET_BINARY); fi ;
-	-mkdir $(TARGET_DIR)/var/lib/tftpboot
 	$(INSTALL) -D -m 0755 package/tftpd/init-tftpd $(TARGET_DIR)/etc/init.d/S80tftpd-hpa
 
 tftpd: uclibc $(TARGET_DIR)/$(TFTP_HPA_TARGET_BINARY)
 
 tftpd-clean:
-	$(MAKE) DESTDIR=$(TARGET_DIR) -C $(TFTP_HPA_DIR) uninstall
+	rm -rf $(TARGET_DIR)/etc/init.d/S80tftpd-hpa
+	rm -rf $(TARGET_DIR)/usr/sbin/in.tftpd
 	-$(MAKE) -C $(TFTP_HPA_DIR) clean
 
 tftpd-dirclean: