Bluetooth: Add management support for user confirmation request
This patch adds support for the user confirmation (numeric comparison) Secure Simple Pairing authentication method. Signed-off-by: Johan Hedberg <johan.hedberg@nokia.com> Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
This commit is contained in:

committed by
Gustavo F. Padovan

parent
e9a416b5ce
commit
a5c296832b
@@ -415,6 +415,17 @@ struct hci_cp_io_capability_reply {
|
||||
__u8 authentication;
|
||||
} __packed;
|
||||
|
||||
#define HCI_OP_USER_CONFIRM_REPLY 0x042c
|
||||
struct hci_cp_user_confirm_reply {
|
||||
bdaddr_t bdaddr;
|
||||
} __packed;
|
||||
struct hci_rp_user_confirm_reply {
|
||||
__u8 status;
|
||||
bdaddr_t bdaddr;
|
||||
} __packed;
|
||||
|
||||
#define HCI_OP_USER_CONFIRM_NEG_REPLY 0x042d
|
||||
|
||||
#define HCI_OP_IO_CAPABILITY_NEG_REPLY 0x0434
|
||||
struct hci_cp_io_capability_neg_reply {
|
||||
bdaddr_t bdaddr;
|
||||
@@ -936,6 +947,12 @@ struct hci_ev_io_capa_reply {
|
||||
__u8 authentication;
|
||||
} __packed;
|
||||
|
||||
#define HCI_EV_USER_CONFIRM_REQUEST 0x33
|
||||
struct hci_ev_user_confirm_req {
|
||||
bdaddr_t bdaddr;
|
||||
__le32 passkey;
|
||||
} __packed;
|
||||
|
||||
#define HCI_EV_SIMPLE_PAIR_COMPLETE 0x36
|
||||
struct hci_ev_simple_pair_complete {
|
||||
__u8 status;
|
||||
|
@@ -762,6 +762,10 @@ int mgmt_connect_failed(u16 index, bdaddr_t *bdaddr, u8 status);
|
||||
int mgmt_pin_code_request(u16 index, bdaddr_t *bdaddr);
|
||||
int mgmt_pin_code_reply_complete(u16 index, bdaddr_t *bdaddr, u8 status);
|
||||
int mgmt_pin_code_neg_reply_complete(u16 index, bdaddr_t *bdaddr, u8 status);
|
||||
int mgmt_user_confirm_request(u16 index, bdaddr_t *bdaddr, __le32 value);
|
||||
int mgmt_user_confirm_reply_complete(u16 index, bdaddr_t *bdaddr, u8 status);
|
||||
int mgmt_user_confirm_neg_reply_complete(u16 index, bdaddr_t *bdaddr,
|
||||
u8 status);
|
||||
|
||||
/* HCI info for socket */
|
||||
#define hci_pi(sk) ((struct hci_pinfo *) sk)
|
||||
|
@@ -172,6 +172,19 @@ struct mgmt_rp_pair_device {
|
||||
__u8 status;
|
||||
} __packed;
|
||||
|
||||
#define MGMT_OP_USER_CONFIRM_REPLY 0x0015
|
||||
struct mgmt_cp_user_confirm_reply {
|
||||
__le16 index;
|
||||
bdaddr_t bdaddr;
|
||||
} __packed;
|
||||
struct mgmt_rp_user_confirm_reply {
|
||||
__le16 index;
|
||||
bdaddr_t bdaddr;
|
||||
__u8 status;
|
||||
} __packed;
|
||||
|
||||
#define MGMT_OP_USER_CONFIRM_NEG_REPLY 0x0016
|
||||
|
||||
#define MGMT_EV_CMD_COMPLETE 0x0001
|
||||
struct mgmt_ev_cmd_complete {
|
||||
__le16 opcode;
|
||||
@@ -239,3 +252,10 @@ struct mgmt_ev_pin_code_request {
|
||||
__le16 index;
|
||||
bdaddr_t bdaddr;
|
||||
} __packed;
|
||||
|
||||
#define MGMT_EV_USER_CONFIRM_REQUEST 0x000F
|
||||
struct mgmt_ev_user_confirm_request {
|
||||
__le16 index;
|
||||
bdaddr_t bdaddr;
|
||||
__le32 value;
|
||||
} __packed;
|
||||
|
Reference in New Issue
Block a user