|
@@ -288,6 +288,22 @@ struct mgmt_cp_unblock_device {
|
|
|
bdaddr_t bdaddr;
|
|
|
} __packed;
|
|
|
|
|
|
+struct mgmt_ltk_info {
|
|
|
+ struct mgmt_addr_info addr;
|
|
|
+ __u8 authenticated;
|
|
|
+ __u8 master;
|
|
|
+ __u8 enc_size;
|
|
|
+ __le16 ediv;
|
|
|
+ __u8 rand[8];
|
|
|
+ __u8 val[16];
|
|
|
+} __packed;
|
|
|
+
|
|
|
+#define MGMT_OP_LOAD_LONG_TERM_KEYS 0x0026
|
|
|
+struct mgmt_cp_load_long_term_keys {
|
|
|
+ __le16 key_count;
|
|
|
+ struct mgmt_ltk_info keys[0];
|
|
|
+} __packed;
|
|
|
+
|
|
|
#define MGMT_EV_CMD_COMPLETE 0x0001
|
|
|
struct mgmt_ev_cmd_complete {
|
|
|
__le16 opcode;
|
|
@@ -387,3 +403,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 {
|
|
|
+ __u8 store_hint;
|
|
|
+ struct mgmt_ltk_info key;
|
|
|
+} __packed;
|