summaryrefslogtreecommitdiffstats
path: root/net/bluetooth
diff options
context:
space:
mode:
authorVinicius Costa Gomes2012-07-28 00:32:59 +0200
committerGustavo Padovan2012-08-15 05:53:19 +0200
commit4cd2d98340b4f03d5532c30fdaeb451b035429cb (patch)
treeec9c837bd2accce9368a865dcc1a04f7e03eb850 /net/bluetooth
parentBluetooth: Refactor SCO connection into its own function (diff)
downloadkernel-qcow2-linux-4cd2d98340b4f03d5532c30fdaeb451b035429cb.tar.gz
kernel-qcow2-linux-4cd2d98340b4f03d5532c30fdaeb451b035429cb.tar.xz
kernel-qcow2-linux-4cd2d98340b4f03d5532c30fdaeb451b035429cb.zip
Bluetooth: Simplify a the connection type handling
Now that we have separate ways of doing connections for each link type, we can do better than an "if" statement to handle each link type. Signed-off-by: Vinicius Costa Gomes <vinicius.gomes@openbossa.org> Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
Diffstat (limited to 'net/bluetooth')
-rw-r--r--net/bluetooth/hci_conn.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/net/bluetooth/hci_conn.c b/net/bluetooth/hci_conn.c
index de7df88a396b..2e7b7765e0ea 100644
--- a/net/bluetooth/hci_conn.c
+++ b/net/bluetooth/hci_conn.c
@@ -568,13 +568,16 @@ struct hci_conn *hci_connect(struct hci_dev *hdev, int type, bdaddr_t *dst,
{
BT_DBG("%s dst %s", hdev->name, batostr(dst));
- if (type == LE_LINK)
+ switch (type) {
+ case LE_LINK:
return hci_connect_le(hdev, dst, dst_type, sec_level, auth_type);
-
- if (type == ACL_LINK)
+ case ACL_LINK:
return hci_connect_acl(hdev, dst, sec_level, auth_type);
+ case SCO_LINK:
+ return hci_connect_sco(hdev, dst, sec_level, auth_type);
+ }
- return hci_connect_sco(hdev, dst, sec_level, auth_type);
+ return ERR_PTR(-EINVAL);
}
/* Check link security requirement */