diff --git a/openwrt/package/p910nd/Makefile b/openwrt/package/p910nd/Makefile index e68463cdfd..917b0fa020 100644 --- a/openwrt/package/p910nd/Makefile +++ b/openwrt/package/p910nd/Makefile @@ -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 diff --git a/openwrt/package/p910nd/files/p910nd.default b/openwrt/package/p910nd/files/p910nd.default index 1ee3bcbaf1..77317cfad3 100644 --- a/openwrt/package/p910nd/files/p910nd.default +++ b/openwrt/package/p910nd/files/p910nd.default @@ -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 diff --git a/openwrt/package/p910nd/files/p910nd.init b/openwrt/package/p910nd/files/p910nd.init index 688090d919..1a6c4f4a13 100644 --- a/openwrt/package/p910nd/files/p910nd.init +++ b/openwrt/package/p910nd/files/p910nd.init @@ -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)"