Bluetooth: Add SMP to User Passkey and Confirm
Low Energy pairing is performed through the SMP (Security Manager Protocol) mechanism rather than HCI. Signed-off-by: Brian Gix <bgix@codeaurora.org> Acked-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
This commit is contained in:
parent
2b64d153a0
commit
5fe57d9e9e
|
@ -30,6 +30,7 @@
|
||||||
#include <net/bluetooth/bluetooth.h>
|
#include <net/bluetooth/bluetooth.h>
|
||||||
#include <net/bluetooth/hci_core.h>
|
#include <net/bluetooth/hci_core.h>
|
||||||
#include <net/bluetooth/mgmt.h>
|
#include <net/bluetooth/mgmt.h>
|
||||||
|
#include <net/bluetooth/smp.h>
|
||||||
|
|
||||||
#define MGMT_VERSION 0
|
#define MGMT_VERSION 0
|
||||||
#define MGMT_REVISION 1
|
#define MGMT_REVISION 1
|
||||||
|
@ -1642,8 +1643,15 @@ static int user_pairing_resp(struct sock *sk, u16 index, bdaddr_t *bdaddr,
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Continue with pairing via SMP */
|
/* Continue with pairing via SMP */
|
||||||
|
err = smp_user_confirm_reply(conn, mgmt_op, passkey);
|
||||||
|
|
||||||
|
if (!err)
|
||||||
|
err = cmd_status(sk, index, mgmt_op,
|
||||||
|
MGMT_STATUS_SUCCESS);
|
||||||
|
else
|
||||||
|
err = cmd_status(sk, index, mgmt_op,
|
||||||
|
MGMT_STATUS_FAILED);
|
||||||
|
|
||||||
err = cmd_status(sk, index, mgmt_op, MGMT_STATUS_SUCCESS);
|
|
||||||
goto done;
|
goto done;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue