Searched refs:irk (Results 1 - 11 of 11) sorted by relevance

/linux-master/net/bluetooth/
H A Dsmp.h90 __u8 irk[16]; member in struct:smp_cmd_ident_info
191 bool smp_irk_matches(struct hci_dev *hdev, const u8 irk[16],
193 int smp_generate_rpa(struct hci_dev *hdev, const u8 irk[16], bdaddr_t *rpa);
H A Dhci_request.c375 struct smp_irk *irk; local
377 irk = hci_find_irk_by_addr(req->hdev, bdaddr, bdaddr_type);
378 if (irk) {
428 struct smp_irk *irk; local
430 irk = hci_find_irk_by_addr(hdev, &params->addr,
432 if (irk) {
437 memcpy(cp.peer_irk, irk->val, 16);
440 memcpy(cp.local_irk, hdev->irk, 16);
658 err = smp_generate_rpa(hdev, hdev->irk, &hdev->rpa);
H A Dhci_core.c1270 struct smp_irk *irk; local
1273 list_for_each_entry_rcu(irk, &hdev->identity_resolving_keys, list) {
1274 if (!bacmp(&irk->rpa, rpa)) {
1275 irk_to_return = irk;
1280 list_for_each_entry_rcu(irk, &hdev->identity_resolving_keys, list) {
1281 if (smp_irk_matches(hdev, irk->val, rpa)) {
1282 bacpy(&irk->rpa, rpa);
1283 irk_to_return = irk;
1305 struct smp_irk *irk; local
1312 list_for_each_entry_rcu(irk,
1413 struct smp_irk *irk; local
1486 struct smp_irk *irk; local
[all...]
H A Dhci_debugfs.c682 16, hdev->irk, &hdev->rpa);
824 struct smp_irk *irk; local
827 list_for_each_entry_rcu(irk, &hdev->identity_resolving_keys, list) {
829 &irk->bdaddr, irk->addr_type,
830 16, irk->val, &irk->rpa);
H A Dsmp.c113 u8 irk[16]; member in struct:smp_chan
471 static int smp_ah(const u8 irk[16], const u8 r[3], u8 res[3]) argument
480 err = smp_e(irk, _res);
497 bool smp_irk_matches(struct hci_dev *hdev, const u8 irk[16], argument
507 bt_dev_dbg(hdev, "RPA %pMR IRK %*phN", bdaddr, 16, irk);
509 err = smp_ah(irk, &bdaddr->b[3], hash);
516 int smp_generate_rpa(struct hci_dev *hdev, const u8 irk[16], bdaddr_t *rpa) argument
529 err = smp_ah(irk, &rpa->b[3], rpa->b);
1326 memcpy(idinfo.irk, hdev->irk, sizeo
3501 const u8 irk[16] = { local
[all...]
H A Dhci_conn.c75 struct smp_irk *irk; local
83 irk = hci_get_irk(hdev, bdaddr, bdaddr_type);
84 if (irk) {
85 bdaddr = &irk->bdaddr;
86 bdaddr_type = irk->addr_type;
1269 struct smp_irk *irk; local
1309 irk = hci_find_irk_by_addr(hdev, dst, dst_type);
1310 if (irk && bacmp(&irk->rpa, BDADDR_ANY)) {
1311 dst = &irk
[all...]
H A Dhci_sync.c972 err = smp_generate_rpa(hdev, hdev->irk, &hdev->rpa);
2224 * Setting params to NULL programs local hdev->irk
2230 struct smp_irk *irk; local
2237 /* Attempt to program local identity address, type and irk if params is
2245 memcpy(cp.peer_irk, hdev->irk, 16);
2249 irk = hci_find_irk_by_addr(hdev, &params->addr, params->addr_type);
2250 if (!irk)
2262 memcpy(cp.peer_irk, irk->val, 16);
2279 memcpy(cp.local_irk, hdev->irk, 16);
2292 struct smp_irk *irk; local
[all...]
H A Dmgmt.c3003 /* Abort any ongoing SMP pairing. Removes ltk and irk if they exist. */
6993 memcpy(hdev->irk, cp->irk, sizeof(hdev->irk));
7002 memset(hdev->irk, 0, sizeof(hdev->irk));
7020 static bool irk_is_valid(struct mgmt_irk_info *irk) argument
7022 switch (irk->addr.type) {
7028 if ((irk->addr.bdaddr.b[5] & 0xc0) != 0xc0)
7083 struct mgmt_irk_info *irk local
9556 mgmt_new_irk(struct hci_dev *hdev, struct smp_irk *irk, bool persistent) argument
[all...]
H A Dhci_event.c5752 struct smp_irk *irk; local
5824 irk = hci_get_irk(hdev, &conn->dst, conn->dst_type);
5825 if (irk) {
5826 bacpy(&conn->dst, &irk->bdaddr);
5827 conn->dst_type = irk->addr_type;
6135 struct smp_irk *irk; local
6201 if (!smp_irk_matches(hdev, hdev->irk, direct_addr))
6206 irk = hci_get_irk(hdev, bdaddr, bdaddr_type);
6207 if (irk) {
6208 bdaddr = &irk
[all...]
/linux-master/include/net/bluetooth/
H A Dmgmt.h414 __u8 irk[16]; member in struct:mgmt_cp_set_privacy
1027 struct mgmt_irk_info irk; member in struct:mgmt_ev_new_irk
H A Dhci_core.h629 __u8 irk[16]; member in struct:hci_dev
2313 void mgmt_new_irk(struct hci_dev *hdev, struct smp_irk *irk, bool persistent);

Completed in 482 milliseconds