FAQ Search Today's Posts Mark Forums Read
» Video Reviews

» Linux Archive

Linux-archive is a website aiming to archive linux email lists and to make them easily accessible for linux users/developers.


» Sponsor

» Partners

» Sponsor

Go Back   Linux Archive > Ubuntu > Ubuntu Kernel Team

 
 
LinkBack Thread Tools
 
Old 03-12-2012, 02:57 PM
Leann Ogasawara
 
Default Bluetooth: Fix l2cap conn failures for ssp devices

This is a clean cherry-pick into Precise and has positive test feedback,
so I've applied this to Precise master-next. I cherry-picked this
directly from upstream instead and inserted the BugLink.

Thanks,
Leann

On Mon, 2012-03-12 at 21:59 +0800, Ming Lei wrote:
> From 18daf1644e634bae951a6e3d4d19d89170209762 Mon Sep 17 00:00:00 2001
> From: Peter Hurley <peter@hurleysoftware.com>
> Date: Fri, 13 Jan 2012 15:11:30 +0100
> Subject: [PATCH] Bluetooth: Fix l2cap conn failures for ssp devices
>
> Commit 330605423c fixed l2cap conn establishment for non-ssp remote
> devices by not setting HCI_CONN_ENCRYPT_PEND every time conn security
> is tested (which was always returning failure on any subsequent
> security checks).
>
> However, this broke l2cap conn establishment for ssp remote devices
> when an ACL link was already established at SDP-level security. This
> fix ensures that encryption must be pending whenever authentication
> is also pending.
>
> BugLink: http://bugs.launchpad.net/bugs/872044
> Upstream discusstion: http://marc.info/?t=131292188200002&r=1&w=2
>
> Signed-off-by: Peter Hurley <peter@hurleysoftware.com>
> Tested-by: Daniel Wagner <daniel.wagner@bmw-carit.de>
> Acked-by: Marcel Holtmann <marcel@holtmann.org>
> Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
> ---
> This wasn't cc:ed stable@kernel.org, but was merged to 3.3-rc6 as
> commit 18daf1644e634bae951a6e3d4d19d89170209762(Bluetooth : Fix l2cap
> conn failures for ssp devices).
> ---
> net/bluetooth/hci_conn.c | 4 ++++
> 1 files changed, 4 insertions(+), 0 deletions(-)
>
> diff --git a/net/bluetooth/hci_conn.c b/net/bluetooth/hci_conn.c
> index 3db4324..07bc69e 100644
> --- a/net/bluetooth/hci_conn.c
> +++ b/net/bluetooth/hci_conn.c
> @@ -635,6 +635,10 @@ static int hci_conn_auth(struct hci_conn *conn,
> __u8 sec_level, __u8 auth_type)
>
> if (!test_and_set_bit(HCI_CONN_AUTH_PEND, &conn->pend)) {
> struct hci_cp_auth_requested cp;
> +
> + /* encrypt must be pending if auth is also pending */
> + set_bit(HCI_CONN_ENCRYPT_PEND, &conn->pend);
> +
> cp.handle = cpu_to_le16(conn->handle);
> hci_send_cmd(conn->hdev, HCI_OP_AUTH_REQUESTED,
> sizeof(cp), &cp);
> --
> 1.7.9
>



--
kernel-team mailing list
kernel-team@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/kernel-team
 

Thread Tools




All times are GMT. The time now is 07:48 AM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.
Copyright 2007 - 2008, www.linux-archive.org