summaryrefslogtreecommitdiffstats
path: root/include/net/bluetooth/mgmt.h
diff options
context:
space:
mode:
authorMarcel Holtmann2014-03-09 20:19:17 +0100
committerJohan Hedberg2014-03-09 20:39:50 +0100
commit7ee4ea3692f20b87b0e0d3884d5b2d22ec1a2df0 (patch)
tree8e3cb5d8a34f9daeb19a97b7d6147d3955b501b1 /include/net/bluetooth/mgmt.h
parentBluetooth: Fix skb allocation check for A2MP (diff)
downloadkernel-qcow2-linux-7ee4ea3692f20b87b0e0d3884d5b2d22ec1a2df0.tar.gz
kernel-qcow2-linux-7ee4ea3692f20b87b0e0d3884d5b2d22ec1a2df0.tar.xz
kernel-qcow2-linux-7ee4ea3692f20b87b0e0d3884d5b2d22ec1a2df0.zip
Bluetooth: Add support for handling signature resolving keys
The connection signature resolving key (CSRK) is used for attribute protocol signed write procedures. This change generates a new local key during pairing and requests the peer key as well. Newly generated key and received key will be provided to userspace using the New Signature Resolving Key management event. The Master CSRK can be used for verification of remote signed write PDUs and the Slave CSRK can be used for sending signed write PDUs to the remote device. Signed-off-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
Diffstat (limited to 'include/net/bluetooth/mgmt.h')
-rw-r--r--include/net/bluetooth/mgmt.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/include/net/bluetooth/mgmt.h b/include/net/bluetooth/mgmt.h
index 0326648fd799..d4b571c2f9fd 100644
--- a/include/net/bluetooth/mgmt.h
+++ b/include/net/bluetooth/mgmt.h
@@ -551,3 +551,15 @@ struct mgmt_ev_new_irk {
bdaddr_t rpa;
struct mgmt_irk_info irk;
} __packed;
+
+struct mgmt_csrk_info {
+ struct mgmt_addr_info addr;
+ __u8 master;
+ __u8 val[16];
+} __packed;
+
+#define MGMT_EV_NEW_CSRK 0x0019
+struct mgmt_ev_new_csrk {
+ __u8 store_hint;
+ struct mgmt_csrk_info key;
+} __packed;