Hi, I am happy to add these missing elements to my bug report:

[Test Plan]

1. Prerequisites:

- You need a Bluetooth Low Energy (BLE) HID device that supports Feature 
Reports.
- The device must remain paired and connected for the duration of the test.
- Install python3 and python3-hid (sudo apt install python3-hid) or pip install 
hidapi.

https://pypi.org/project/hid/
(This is the Python package dependency for the reproducer script.)

2. Execution:

- Save the Python script provided below as 
"reproduce_hid_feature_report_bt_transport_overflow.py".
- Edit the VENDOR_ID, PRODUCT_ID, and REPORT_ID variables at the top of the 
script to match your specific BLE device.
- Run the script: python3 reproduce_hid_feature_report_bt_transport_overflow.py

3. Expected Result (Current/Failing):

- The script will run successfully for approximately 65,535 total operations.
- Once the internal BlueZ uint16_t counter overflows, the kernel will reject 
the mismatched ID response.
- The script will terminate with: "hid.HIDException: ioctl (GFEATURE): 
Input/output error".

4. Expected Result (Fixed):

- The script continues running past the 65,536 count barrier without
raising an EIO error.


[Reproducer Script]

I included the "reproduce_hid_feature_report_bt_transport_overflow.py"
Python script as a comment attachment.

** Attachment added: "Reproducer Script"
   
https://bugs.launchpad.net/ubuntu/+source/bluez/+bug/2130724/+attachment/5928204/+files/reproduce_hid_feature_report_bt_transport_overflow.py

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2130724

Title:
  HID feature report breaks after exchanging 65535 packets
  (UINT16_T_MAX)

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/bluez/+bug/2130724/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to