summaryrefslogtreecommitdiff
path: root/tools/openbsd/attach
diff options
context:
space:
mode:
Diffstat (limited to 'tools/openbsd/attach')
-rwxr-xr-xtools/openbsd/attach15
1 files changed, 7 insertions, 8 deletions
diff --git a/tools/openbsd/attach b/tools/openbsd/attach
index b6c98c8..16ce31f 100755
--- a/tools/openbsd/attach
+++ b/tools/openbsd/attach
@@ -5,16 +5,15 @@ DEVNAME=$2
case $DEVCLASS in
0)
- # generic devices
case "$DEVNAME" in
ugen*)
- BUSNAME=`usbdevs -v -d | egrep "Controller|$DEVNAME\$" | grep -B 1 ugen0$ | head -n 1 | sed -e 's,Controller ,,' -e 's,:$,,' `
- echo $BUSNAME > /var/run/${DEVNAME}.bus
- # probably our scanner
- chgrp usb /dev/"$DEVNAME".*
- chgrp usb /dev/"$BUSNAME"
+ BUSNAME=$(usbdevs -vv | egrep "Controller|$DEVNAME\$" | grep -B 1 "$DEVNAME\$" | awk -F'[ :]' '/^Controller/ { print $2 }')
+ echo $BUSNAME > /var/run/${DEVNAME}.bus
+ chown _cups:_saned /dev/${DEVNAME}.* &&
+ chmod 660 /dev/${DEVNAME}.*
+ chown _cups:_saned $BUSNAME &&
+ chmod 660 $BUSNAME
;;
esac
-
- ;;
+ ;;
esac