2010-04-11 09:49:05

by Brian Rogers

[permalink] [raw]
Subject: Mouse authentication regression after 4.63

Upon trying out a newer version of BlueZ, I found a regression in
support for my mouse caused by the following commit:

commit aee26b30bbc24cde464ba1a557c2b258ddec6432
Author: Johan Hedberg <[email protected]>
Date: Tue Mar 30 13:36:46 2010 +0300

Make BtIO default security level MEDIUM

MEDIUM makes more sense than the kernel default LOW which maps to "no
bonding" with SSP (something that's useful only for very special cases
such as OPP).


After this commit, when I turn on or move my mouse, I get prompted for a
PIN to use for the connection. "0000" won't work, and blank isn't
accepted, so the mouse can't connect. Deleting and re-pairing my mouse
doesn't work either. I suspect my mouse just does not support
encryption. I've never seen AUTH or ENCRYPT on my mouse in the output of
"hcitool con" and I can't enable encryption on a working bluez using
"hcitool auth". It just prompts for a PIN, and disconnects the mouse
when I enter one. And there's no documentation on what PIN should be
used with this mouse.

With the above commit reverted, it works fine again. The mouse
information is below. Could this be a device-specific quirk? What
information is needed to resolve this?

$ hcitool info 00:12:A1:63:EF:3A
Requesting information ...
BD Address: 00:12:A1:63:EF:3A
Device Name: Interlink Bluetooth Mouse
LMP Version: 2.0 (0x3) LMP Subversion: 0x229
Manufacturer: Broadcom Corporation (15)
Features: 0xbc 0x02 0x04 0x38 0x08 0x00 0x00 0x00
<encryption> <slot offset> <timing accuracy> <role switch>
<sniff mode> <RSSI> <power control> <enhanced iscan>
<interlaced iscan> <interlaced pscan> <AFH cap. slave>



2010-04-11 22:11:56

by Brian Rogers

[permalink] [raw]
Subject: Re: Mouse authentication regression after 4.63

On 04/11/2010 03:36 AM, Johan Hedberg wrote:
> Hi Brian,
>
> On Sun, Apr 11, 2010, Brian Rogers wrote:
>
>> Upon trying out a newer version of BlueZ, I found a regression in
>> support for my mouse caused by the following commit:
>>
>> commit aee26b30bbc24cde464ba1a557c2b258ddec6432
>> Author: Johan Hedberg<[email protected]>
>> Date: Tue Mar 30 13:36:46 2010 +0300
>>
>> Make BtIO default security level MEDIUM
>>
>> MEDIUM makes more sense than the kernel default LOW which maps to "no
>> bonding" with SSP (something that's useful only for very special cases
>> such as OPP).
>>
>>
>> After this commit, when I turn on or move my mouse, I get prompted
>> for a PIN to use for the connection. "0000" won't work, and blank
>> isn't accepted, so the mouse can't connect. Deleting and re-pairing
>> my mouse doesn't work either. I suspect my mouse just does not
>> support encryption. I've never seen AUTH or ENCRYPT on my mouse in
>> the output of "hcitool con" and I can't enable encryption on a
>> working bluez using "hcitool auth". It just prompts for a PIN, and
>> disconnects the mouse when I enter one. And there's no documentation
>> on what PIN should be used with this mouse.
>>
>> With the above commit reverted, it works fine again. The mouse
>> information is below. Could this be a device-specific quirk? What
>> information is needed to resolve this?
>>
> I don't think this needs anything device specific. Authentication is
> optional for mice so we can't really have the HID sockets requiring
> higher security than LOW. The attached patch should fix the issue.
>

That did the trick. Thanks.

Brian


2010-04-11 10:36:18

by Johan Hedberg

[permalink] [raw]
Subject: Re: Mouse authentication regression after 4.63

Hi Brian,

On Sun, Apr 11, 2010, Brian Rogers wrote:
> Upon trying out a newer version of BlueZ, I found a regression in
> support for my mouse caused by the following commit:
>
> commit aee26b30bbc24cde464ba1a557c2b258ddec6432
> Author: Johan Hedberg <[email protected]>
> Date: Tue Mar 30 13:36:46 2010 +0300
>
> Make BtIO default security level MEDIUM
>
> MEDIUM makes more sense than the kernel default LOW which maps to "no
> bonding" with SSP (something that's useful only for very special cases
> such as OPP).
>
>
> After this commit, when I turn on or move my mouse, I get prompted
> for a PIN to use for the connection. "0000" won't work, and blank
> isn't accepted, so the mouse can't connect. Deleting and re-pairing
> my mouse doesn't work either. I suspect my mouse just does not
> support encryption. I've never seen AUTH or ENCRYPT on my mouse in
> the output of "hcitool con" and I can't enable encryption on a
> working bluez using "hcitool auth". It just prompts for a PIN, and
> disconnects the mouse when I enter one. And there's no documentation
> on what PIN should be used with this mouse.
>
> With the above commit reverted, it works fine again. The mouse
> information is below. Could this be a device-specific quirk? What
> information is needed to resolve this?

I don't think this needs anything device specific. Authentication is
optional for mice so we can't really have the HID sockets requiring
higher security than LOW. The attached patch should fix the issue.

Johan


Attachments:
(No filename) (1.50 kB)
input-sec-level.patch (1.42 kB)
Download all attachments