#
# Copyright (C) 2006-2016 OpenWrt.org
-# Copyright (C) 2017-2018 Luiz Angelo Daros de Luca <luizluca@gmail.com>
+# Copyright (C) 2017-2019 Luiz Angelo Daros de Luca <luizluca@gmail.com>
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
PKG_NAME:=sane-backends
PKG_VERSION:=1.0.27
-PKG_RELEASE:=2
+PKG_RELEASE:=3
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://fossies.org/linux/misc \
https://alioth.debian.org/frs/download.php/file/4146/
$(INSTALL_DIR) $(1)/etc/sane.d
$(INSTALL_CONF) $(PKG_INSTALL_DIR)/etc/sane.d/saned.conf $(1)/etc/sane.d/
$(INSTALL_DIR) $(1)/usr/sbin
- $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/* $(1)/usr/sbin/
+ $(INSTALL_BIN) ./files/usr/sbin/saned $(1)/usr/sbin/saned
+ $(INSTALL_DIR) $(1)/usr/lib/sane/
+ $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/saned $(1)/usr/lib/sane/saned
$(INSTALL_DIR) $(1)/etc/xinetd.d
- $(CP) ./files/xinet.d_sane-port $(1)/etc/xinetd.d/sane-port
+ $(CP) ./files/etc/xinetd.d/sane-port $(1)/etc/xinetd.d/sane-port
endef
define Package/sane-daemon/conffiles
--- /dev/null
+# default: off
+# description: The saned provides scanner service via the network. \
+# Applications like kooka, xsane or xscanimage can use the remote \
+# scanner.
+service sane-port
+{
+ socket_type = stream
+ port = 6566
+ wait = no
+ user = root
+ group = root
+ server = /usr/sbin/saned
+ disable = yes
+}
--- /dev/null
+#!/bin/sh
+
+usblp_driver="/sys/bus/usb/drivers/usblp"
+
+inuse=""
+if [ -e /sys/bus/usb/devices ]; then
+ for usbdev_driver in /sys/bus/usb/devices/*/driver; do
+ [ -e "$usbdev_driver" ] || continue
+ [ "$(readlink -f "$usbdev_driver")" = "$usblp_driver" ] || continue
+ usbdev="${usbdev_driver%/*}"
+ inuse="$inuse ${usbdev##*/}"
+ done
+fi
+
+/usr/lib/sane/saned "$@"
+err=$?
+
+for usbdev in $inuse; do
+ [ -e "/sys/bus/usb/devices/$usbdev/driver" ] && continue
+ logger -t saned "binding device $usbdev back to usblp..."
+ printf '%s' "$usbdev" > "$usblp_driver/bind"
+done
+
+exit $err
+++ /dev/null
-# default: off
-# description: The saned provides scanner service via the network. \
-# Applications like kooka, xsane or xscanimage can use the remote \
-# scanner.
-service sane-port
-{
- socket_type = stream
- port = 6566
- wait = no
- user = root
- group = root
- server = /usr/sbin/saned
- disable = yes
-}