Also seeing this with a APC Back-UPS Pro and usbhid-ups, but on a physical machine, so no vmware shenenigans to mess with the USB descriptors. lsusb shows the iManufacturer and iProduct:

Bus 005 Device 013: ID 051d:0002 American Power Conversion Uninterruptible 
Power Supply
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0        64
  idVendor           0x051d American Power Conversion
  idProduct          0x0002 Uninterruptible Power Supply
  bcdDevice            0.90
  iManufacturer           1 American Power Conversion
  iProduct                2 Back-UPS BR 900GI FW:879.L3 .I USB FW:L3
  iSerial                 3 3B1125X03827
  bNumConfigurations      1

But usbhid-ups lists them as unknown before segfaulting:

Starting program: /lib/nut/usbhid-ups -a yzzrt-ups -DD
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Network UPS Tools - Generic HID driver 0.38 (2.7.2)
USB communication driver 0.32
   0.000000     debug level is '2'
   0.049516     upsdrv_initups...
   0.299042     Checking device ...
   ...
   0.347131     Checking device (051D/0002) (005/013)
   0.347166     - VendorID: 051d
   0.347201     - ProductID: 0002
   0.347215     - Manufacturer: unknown
   0.347230     - Product: unknown
   0.347256     - Serial Number: unknown
   0.347272     - Bus: 005
   0.347286     Trying to match device

Program received signal SIGSEGV, Segmentation fault.
__strncmp_ssse3 () at ../sysdeps/x86_64/multiarch/../strcmp.S:1233
1233    ../sysdeps/x86_64/multiarch/../strcmp.S: No such file or directory.

Confirm that patching nut-2.7.2 with the patch in #5 fixes this:

   0.299235     Checking device (051D/0002) (005/013)
   0.299268     - VendorID: 051d
   0.299287     - ProductID: 0002
   0.299301     - Manufacturer: unknown
   0.299316     - Product: unknown
   0.299330     - Serial Number: unknown
   0.299344     - Bus: 005
   0.299359     Trying to match device
   0.299373     device->Product is NULL so it is not possible to determine 
whether to activate max_report_size workaround
   0.299390     Device matches

Although it seems that this is slightly random; trying again a second time it actually sees the idProduct this time:

   0.298864     Checking device (051D/0002) (005/013)
   0.310794     - VendorID: 051d
   0.310804     - ProductID: 0002
   0.310808     - Manufacturer: American Power Conversion
   0.310811     - Product: Back-UPS BR 900GI FW:879.L3 .I USB FW:L3
   0.310815     - Serial Number: 3B1125X03827
   0.310819     - Bus: 005
   0.310822     Trying to match device
   0.310835     Device matches

No idea.

 -- Tero Marttila

Reply via email to