change initscript to use more than one port / device, bump release number.
authorNicolas Thill <nico@openwrt.org>
Sat, 8 Oct 2005 19:12:51 +0000 (19:12 +0000)
committerNicolas Thill <nico@openwrt.org>
Sat, 8 Oct 2005 19:12:51 +0000 (19:12 +0000)
SVN-Revision: 2080

openwrt/package/p910nd/Makefile
openwrt/package/p910nd/files/p910nd.default
openwrt/package/p910nd/files/p910nd.init

index e68463cdfd277f931d6544ce8f25268118540e9b..917b0fa0207cd302a9dd38766a2d94510af8d206 100644 (file)
@@ -2,7 +2,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=p910nd
 PKG_VERSION:=0.7
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 PKG_MD5SUM:=7bf752532d26c9106f8039db95df3a6b
 
 PKG_SOURCE_URL:=http://www.etherboot.org/p910nd
index 1ee3bcbaf110c3ff0a0fd17ff8db16f43bff37b1..77317cfad3a086ce8a7b2f59cc7255c653d14edd 100644 (file)
@@ -1,14 +1,9 @@
-# Port 9100 is copied to /dev/printers/0, 9101 to /dev/printers/1
-# and 9102 to /dev/printers/2. The default is port 9100 to
-# /dev/printers/0.
-# Values are 0|1|2
+# printing port list, in the form "number [options]"
+# where:
+#  - number is the port number in the range [0-9]
+#    the p910nd daemon will listen on tcp port 9100+number
+#  - options can be :
+#    -b to turn on bidirectional copying.
+#    -f to specify a different printer device.
 #
-# Port 9100 for USB connection
-# Port 9101 for LPT connection
-#
-PORT="0"
-
-# The -b option turns on bidirectional copying.
-# The -f option can be used to specify a different printer device.
-#
-#OPTIONS="-b -f /dev/usblp0"
+0  -b -f /dev/usb/lp0
index 688090d91942774f6cf47e73f0d660b5044696d1..1a6c4f4a138136c1649c007226918ff7ef55151d 100644 (file)
@@ -1,17 +1,44 @@
 #!/bin/sh
 
 DEFAULT=/etc/default/p910nd
-[ -f $DEFAULT ] && . $DEFAULT
 RUN_D=/var/run
-PID_F=$RUN_D/p910${PORT-0}d.pid
+
+_start() {
+ mkdir -p $RUN_D
+ [ -f $DEFAULT ] && (
+  while read port options; do
+   case "$port" in
+    ""|\#*)
+     continue;
+   esac
+   p910nd $options $port
+   if [ $? -ne 0 ]; then
+    exit 1
+   fi
+  done
+ ) < $DEFAULT
+ exit 0
+}
+
+_stop() {
+ [ -f $DEFAULT ] && (
+  while read port options; do
+   case "$port" in
+    ""|\#*)
+     continue;
+   esac
+   PID_F=$RUN_D/p910${port}d.pid
+   [ -f $PID_F ] && kill $(cat $PID_F)
+  done
+ ) < $DEFAULT
+}
 
 case $1 in
  start)
-  mkdir -p $RUN_D
-  p910nd $OPTIONS $PORT
+  _start
   ;;
  stop)
-  [ -f $PID_F ] && kill $(cat $PID_F)
+  _stop
   ;;
  *)
   echo "usage: $0 (start|stop)"