WelcomeWelcome | FAQFAQ | DownloadsDownloads | WikiWiki

Author Topic: jpilot - libusb - wrong permissions for usb-device in 4.0.1?  (Read 5099 times)

Offline netnomad

  • Hero Member
  • *****
  • Posts: 1026
jpilot - libusb - wrong permissions for usb-device in 4.0.1?
« on: October 07, 2011, 08:32:21 AM »
hi friends,

i tried to sync my palm in 4.0.1 over usb.
in contrary to 3.8.4 it doesn't work and i get following messages:
libusb couldn't open USB device /dev/bus/usb/002/003: Permission denied.
libusb requires write access to USB device nodes.
dlp_ReadSysInfo error
Exiting with status SYNC_ERROR_PI_CONNECT
Finished.

i use the tc-standard-udev-rule and i don't understand, why it doesn't work:
/etc/udev/rules.d/56-lsusb.rules
SUBSYSTEM=="usb", ACTION=="add", ENV{DEVTYPE}=="usb_device", \
NAME="bus/usb/$env{BUSNUM}/$env{DEVNUM}", MODE="0644"

thank you for your help.

Offline Rich

  • Administrator
  • Hero Member
  • *****
  • Posts: 11573
Re: jpilot - libusb - wrong permissions for usb-device in 4.0.1?
« Reply #1 on: October 07, 2011, 08:59:38 AM »
Hi netnomad
It may be because you are not listed as the owner. Try changing  Mode=644  to  664 or 666.

Offline netnomad

  • Hero Member
  • *****
  • Posts: 1026
Re: jpilot - libusb - wrong permissions for usb-device in 4.0.1?
« Reply #2 on: October 07, 2011, 09:15:34 AM »
yes, i agree, it has something to do with the ownership or permission.

usually that is solved in the /etc/udev/rules.d/*
or
i add my user to the same group as the device.

in 3.8.4 there was a extra rule, that is missing in 4.0.1: /etc/udev/rules.d/90-permissions.rules.
also the content leads in the right direction:# usb devices
SUBSYSTEM=="usb",<-----><------><------><------>GROUP="staff"
SUBSYSTEM=="usb",<-----><------><------><------>MODE="0664"

i used this rule in 4.0.1, but it had no effect.
something in the rules should be the right path, but in the moment i have no clue.

Offline curaga

  • Administrator
  • Hero Member
  • *****
  • Posts: 11041
Re: jpilot - libusb - wrong permissions for usb-device in 4.0.1?
« Reply #3 on: October 07, 2011, 02:10:22 PM »
Please show us what the permissions are, without any changes to the rules. It'll tell if things are properly applied, etc.

ls -l /dev/bus/usb/002/003
The only barriers that can stop you are the ones you create yourself.

Offline netnomad

  • Hero Member
  • *****
  • Posts: 1026
Re: jpilot - libusb - wrong permissions for usb-device in 4.0.1?
« Reply #4 on: October 07, 2011, 02:18:56 PM »
during trying to sync:

libusb couldn't open USB device /dev/bus/usb/002/006: Permission denied.
libusb requires write access to USB device nodes.
dlp_ReadSysInfo error
Exiting with status SYNC_ERROR_PI_CONNECT
Finished.


here you can see the permissions:

tc@box:/dev/bus/usb/002$ ls -la
total 0
drwxr-xr-x 2  root root             80 Oct  7 20:16 ./
drwxr-xr-x 7  root root           140 Oct  7 19:41 ../
crw-rw-r-- 1  root root   189, 128 Oct  7 20:07 001
crw-r--r-- 1    root root   189, 133 Oct  7 20:16 006
« Last Edit: October 07, 2011, 02:20:39 PM by netnomad »

Offline dentonlt

  • Sr. Member
  • ****
  • Posts: 318
    • the trombone analog
Re: jpilot - libusb - wrong permissions for usb-device in 4.0.1?
« Reply #5 on: October 08, 2011, 09:44:38 AM »
Testing here, I can confirm the same problem. It's not a udev thing. On base, try loading pilot-link-base.tcz and then:

pilot-xfer -p usb: -l -t 5

I get christmas, same error as netnomad.

The problem is either in the pilot-link extension or in libusb. I'm tempted to think I just need to rebuild/update the pilot-link extension, otherwise I'd expect libusb problems all over the shop.

I'll test some more as soon as possible, but it could be a few days. Sorry to keep you waiting!

EDIT:
Umm ... maybe not in pilot-xfer after all. The connection works if I sudo pilot-xfer, but that won't be a solution - pilot-xfer is called by Jpilot. The pilot-xfer binary is tc:staff. Changing pilot-xfer to root:root in the extension (reboot/reload) doesn't solve the problem, and it must be connecting to libusb correctly (or there wouldn't be a connection at all, ever).
I'm stumped for the moment, and it's 1am here. Time for bed!

EDIT: Okay, didn't go to bed. Permissions on /dev/bus/usb have changed between 3.8 to 4.0. Using base/norestore:

ls -l -R on /dev/bus/usb for 3.8.1:
Code: [Select]
/dev/bus/usb:
total 0
drwxr-xr-x    2 root     root            60 Oct  9 00:14 001/
drwxr-xr-x    2 root     root            60 Oct  9 00:14 002/
drwxr-xr-x    2 root     root            80 Oct  9 00:14 003/
drwxr-xr-x    2 root     root            60 Oct  9 00:14 004/
drwxr-xr-x    2 root     root            60 Oct  9 00:14 005/

/dev/bus/usb/001:
total 0
crw-rw-r--    1 root     staff     189,   0 Oct  9 00:14 001

/dev/bus/usb/002:
total 0
crw-rw-r--    1 root     staff     189, 128 Oct  9 00:14 001

/dev/bus/usb/003:
total 0
crw-rw-r--    1 root     staff     189, 256 Oct  9 00:14 001
crw-rw-r--    1 root     staff     189, 257 Oct  9 00:14 002

/dev/bus/usb/004:
total 0
crw-rw-r--    1 root     staff     189, 384 Oct  9 00:14 001

/dev/bus/usb/005:
total 0
crw-rw-r--    1 root     staff     189, 512 Oct  9 00:14 001

ls -l -R on /dev/bus/usb for 4.0.1:
Code: [Select]
/dev/bus/usb/:
total 0
drwxr-xr-x    2 root     root            60 Oct  9 00:13 001/
drwxr-xr-x    2 root     root            60 Oct  9 00:13 002/
drwxr-xr-x    2 root     root            80 Oct  9 00:13 003/
drwxr-xr-x    2 root     root            60 Oct  9 00:13 004/
drwxr-xr-x    2 root     root            60 Oct  9 00:13 005/

/dev/bus/usb/001:
total 0
crw-r--r--    1 root     root      189,   0 Oct  9 00:13 001

/dev/bus/usb/002:
total 0
crw-r--r--    1 root     root      189, 128 Oct  9 00:13 001

/dev/bus/usb/003:
total 0
crw-r--r--    1 root     root      189, 256 Oct  9 00:13 001
crw-r--r--    1 root     root      189, 257 Oct  9 00:13 002

/dev/bus/usb/004:
total 0
crw-r--r--    1 root     root      189, 384 Oct  9 00:13 001

/dev/bus/usb/005:
total 0
crw-r--r--    1 root     root      189, 512 Oct  9 00:13 001

And I'm going to bed. For real this time.
« Last Edit: October 08, 2011, 10:20:55 AM by dentonlt »

Offline Rich

  • Administrator
  • Hero Member
  • *****
  • Posts: 11573
Re: jpilot - libusb - wrong permissions for usb-device in 4.0.1?
« Reply #6 on: October 08, 2011, 10:19:07 AM »
While not the correct fix in the long run, changing  MODE  to  666  should at least give you
read/write access for now.

Offline curaga

  • Administrator
  • Hero Member
  • *****
  • Posts: 11041
Re: jpilot - libusb - wrong permissions for usb-device in 4.0.1?
« Reply #7 on: October 08, 2011, 10:51:46 AM »
Expect a fix in the next release.
The only barriers that can stop you are the ones you create yourself.