summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorVinicius Costa Gomes <vinicius.gomes@openbossa.org>2012-01-18 14:12:31 -0300
committerJohan Hedberg <johan.hedberg@intel.com>2012-01-19 00:12:23 +0200
commit3baac3fdbedb8eb4664039b661cc5707949fb7ac (patch)
treec35ccaed5748aa5fa576f8e650d844ee685d0731 /lib
parentd38555d8c9d563e54d7779b5ed039f16a793a236 (diff)
Add messages to the mgmt interface to handle SMP key storage
The SMP keys are to be communicated to/from userspace using these messages.
Diffstat (limited to 'lib')
-rw-r--r--lib/mgmt.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/lib/mgmt.h b/lib/mgmt.h
index 5414ea68d..af6388979 100644
--- a/lib/mgmt.h
+++ b/lib/mgmt.h
@@ -275,6 +275,22 @@ struct mgmt_cp_unblock_device {
bdaddr_t bdaddr;
} __packed;
+struct mgmt_ltk_info {
+ struct mgmt_addr_info addr;
+ uint8_t authenticated;
+ uint8_t master;
+ uint8_t enc_size;
+ uint16_t ediv;
+ uint8_t rand[8];
+ uint8_t val[16];
+} __packed;
+
+#define MGMT_OP_LOAD_LONG_TERM_KEYS 0x0026
+struct mgmt_cp_load_long_term_keys {
+ uint16_t key_count;
+ struct mgmt_ltk_info keys[0];
+} __packed;
+
#define MGMT_EV_CMD_COMPLETE 0x0001
struct mgmt_ev_cmd_complete {
uint16_t opcode;
@@ -374,3 +390,9 @@ struct mgmt_ev_device_blocked {
struct mgmt_ev_device_unblocked {
bdaddr_t bdaddr;
} __packed;
+
+#define MGMT_EV_NEW_LONG_TERM_KEY 0x0015
+struct mgmt_ev_new_long_term_key {
+ uint8_t store_hint;
+ struct mgmt_ltk_info key;
+} __packed;