Bluetooth: Add support for building pairing commands
authorVinicius Costa Gomes <vinicius.gomes@openbossa.org>
Thu, 9 Jun 2011 21:50:52 +0000 (18:50 -0300)
committerGustavo F. Padovan <padovan@profusion.mobi>
Mon, 13 Jun 2011 19:05:36 +0000 (16:05 -0300)
Before we are able to do a proper exchange of pairing parameters,
we need a unified way of building pairing requests and responses.

For IO Capability we use the value that was set by userspace,
using the management interface.

Signed-off-by: Vinicius Costa Gomes <vinicius.gomes@openbossa.org>
Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
net/bluetooth/smp.c

index da46d76..d29700d 100644 (file)
@@ -181,6 +181,17 @@ static void smp_send_cmd(struct l2cap_conn *conn, u8 code, u16 len, void *data)
        hci_send_acl(conn->hcon, skb, 0);
 }
 
+static void build_pairing_cmd(struct l2cap_conn *conn,
+                               struct smp_cmd_pairing *cmd, __u8 authreq)
+{
+       cmd->io_capability = conn->hcon->io_capability;
+       cmd->oob_flag = SMP_OOB_NOT_PRESENT;
+       cmd->max_key_size = 16;
+       cmd->init_key_dist = 0x00;
+       cmd->resp_key_dist = 0x00;
+       cmd->auth_req = authreq;
+}
+
 static void smp_cmd_pairing_req(struct l2cap_conn *conn, struct sk_buff *skb)
 {
        struct smp_cmd_pairing *rp = (void *) skb->data;