This series adds a new "SixaxisCablePairing" property to allow us to indentify sixaxis devices that have been paired using the canonical USB cable method. With that information, we can dynamically enforce encryption to drastically reduce the attack surface, compared to just disabling the "ClassicBondedOnly" property. The "SixaxisCablePairing" property is exposed via D-Bus to allow clients to potentually show this information to end users. As far as I can tell, starting the listening input server with BT_IO_SEC_LOW and then bumping it in `hidp_add_connection()` should not have any negative effect regarding the overall security. However, please let me know if it turns out not being the case. The last commit "input: Validate the Sixaxis HID report descriptor" can probably be reviewed and merged separately if needed. Addresses https://github.com/bluez/bluez/issues/1165 Ludovico de Nittis (5): src: Add new SixaxisCablePairing property client: Print SixaxisCablePairing value if BlueZ was compiled with sixaxis plugins: Set SixaxisCablePairing property when pairing a sixaxis with USB input: Start the server with sec low and bump it when making the connection input: Validate the Sixaxis HID report descriptor client/main.c | 3 ++ configure.ac | 3 ++ doc/org.bluez.Device.rst | 6 ++++ plugins/sixaxis.c | 5 ++- profiles/input/device.c | 77 ++++++++++++++++++++++++++++++++++++++-- profiles/input/server.c | 7 ++++ src/device.c | 44 +++++++++++++++++++++++ src/device.h | 3 ++ 8 files changed, 145 insertions(+), 3 deletions(-) -- 2.49.0