aboutsummaryrefslogtreecommitdiffstats
path: root/net/bluetooth/smp.h
diff options
context:
space:
mode:
Diffstat (limited to 'net/bluetooth/smp.h')
-rw-r--r--net/bluetooth/smp.h13
1 files changed, 11 insertions, 2 deletions
diff --git a/net/bluetooth/smp.h b/net/bluetooth/smp.h
index a700bcb490d7..d8cc543f523c 100644
--- a/net/bluetooth/smp.h
+++ b/net/bluetooth/smp.h
@@ -118,6 +118,7 @@ struct smp_cmd_security_req {
118#define SMP_FLAG_TK_VALID 1 118#define SMP_FLAG_TK_VALID 1
119#define SMP_FLAG_CFM_PENDING 2 119#define SMP_FLAG_CFM_PENDING 2
120#define SMP_FLAG_MITM_AUTH 3 120#define SMP_FLAG_MITM_AUTH 3
121#define SMP_FLAG_COMPLETE 4
121 122
122struct smp_chan { 123struct smp_chan {
123 struct l2cap_conn *conn; 124 struct l2cap_conn *conn;
@@ -128,11 +129,16 @@ struct smp_chan {
128 u8 pcnf[16]; /* SMP Pairing Confirm */ 129 u8 pcnf[16]; /* SMP Pairing Confirm */
129 u8 tk[16]; /* SMP Temporary Key */ 130 u8 tk[16]; /* SMP Temporary Key */
130 u8 enc_key_size; 131 u8 enc_key_size;
132 u8 remote_key_dist;
133 bdaddr_t id_addr;
134 u8 id_addr_type;
135 u8 irk[16];
136 struct smp_ltk *ltk;
137 struct smp_ltk *slave_ltk;
138 struct smp_irk *remote_irk;
131 unsigned long smp_flags; 139 unsigned long smp_flags;
132 struct crypto_blkcipher *tfm;
133 struct work_struct confirm; 140 struct work_struct confirm;
134 struct work_struct random; 141 struct work_struct random;
135
136}; 142};
137 143
138/* SMP Commands */ 144/* SMP Commands */
@@ -144,4 +150,7 @@ int smp_user_confirm_reply(struct hci_conn *conn, u16 mgmt_op, __le32 passkey);
144 150
145void smp_chan_destroy(struct l2cap_conn *conn); 151void smp_chan_destroy(struct l2cap_conn *conn);
146 152
153bool smp_irk_matches(struct crypto_blkcipher *tfm, u8 irk[16],
154 bdaddr_t *bdaddr);
155
147#endif /* __SMP_H */ 156#endif /* __SMP_H */