Re: [RFC] Some kernel changes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

>         so I pushed another set of patches to the
>         bluetooth-testing.git tree and
>         it should include the full BT_SECURITY implemention,
>         BT_DEFER_SETUP for
>         RFCOMM and SCO rejection if no listen socket is present.
>         
>         It currently only drops the connection is encryption is
>         disabled when
>         using BT_SECURITY_HIGH. That is only used for SAP anyway. For
>         all other
>         profiles we use BT_SECURITY_MEDIUM.
>     
>     I updated our build with the patches and after picking up 6e26576c
> (Pause RFCOMM TX when encryption drops) and fixes upto f32ef1836
> (Enforce authentication before encryption) I see a couple of
> problems::
> 
>    a)   I see that in rfcomm/core.c in function rfcomm_security_cfm:
> when the remote side has dropped the encryption for the role change,
> we set the RFCOMM_SEC_PENDING bit but we don't set RFCOMM_AUTH_PENDING
> as suggested in Ville's original patch and so when encryption is
> re-established we dont get past the - test_and_clear_bit
> (RFCOMM_AUTH_PENDING) check in the function.

why do you wanna set AUTH_PENDING again. That is not needed we only
wanna know once encryption comes back on. If no in time, then we just
disconnect the link. That simple.

>    b) I also see that we are not clearing the timer and hence after
> RFCOMM_AUTH_TIMEOUT period expires we bring down the RFCOMM connection
> even though the encryption has been established.

Good catch. Fixed it.

Regards

Marcel


--
To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux