167 Commits

Author SHA1 Message Date
Matthias Ringwald
99f948c87f fix crash in slave role when storing CSRK 2015-11-07 22:09:47 +01:00
Matthias Ringwald
09222c1170 allow to fix local csrk for testing 2015-10-10 22:04:39 +02:00
Matthias Ringwald
80c6fa00ac store both local and remote csrk - remote incorrect optimization 2015-10-10 21:36:43 +02:00
Matthias Ringwald
39d281a3eb flip BD_ADDR from SM_CODE_IDENTITY_ADDRESS_INFORMATION. only add device to db if neither IRK nor public address are found 2015-10-06 10:02:40 +02:00
Matthias Ringwald
5838a2ed38 use PRIu32 for printf of 32-bit integers 2015-09-21 18:10:47 +02:00
Matthias Ringwald
264e3be687 rename sm_request_authorization to sm_request_pairing 2015-08-20 22:00:54 +02:00
Matthias Ringwald
87f8c30bce sm: sm_request_authorization triggers security request as slave 2015-08-20 21:50:20 +02:00
Matthias Ringwald
c84488c5b7 sm: fixes stall in responder role when initiator does not send any keys 2015-08-20 21:37:06 +02:00
Matthias Ringwald
5243c6c843 sm: fixes stall in initiator role when responder does not send any keys 2015-08-20 21:20:50 +02:00
Matthias Ringwald
cbb46e2f9c sm: fixed OOB for responder 2015-08-20 16:24:57 +02:00
Matthias Ringwald
778b54252f sm: reset tk if OOB data cannot be used for pairing 2015-08-20 15:35:45 +02:00
Matthias Ringwald
c2e7aa62b4 sm: notify client for 'both sides input passkey', handle OOB without user notification 2015-08-20 15:07:09 +02:00
Matthias Ringwald
39e3b4c0e6 sm: notify client about pairing request even if there's no input capabilites 2015-08-20 12:18:59 +02:00
Matthias Ringwald
03679531e4 sm: flip message data before calculating CMAC, also store hash result as little endian 2015-08-19 22:39:19 +02:00
Matthias Ringwald
12e4aa3c16 sm: use CSRK of Peripheral to save persistent memory, fix CMAC calculation 2015-08-19 16:47:23 +02:00
Matthias Ringwald
db894f169e Revert "sm: manage global signing counter"
This reverts commit 9f9b1721e11470e7d01a3673ec902fdf325c8da2.
2015-08-19 15:11:44 +02:00
Matthias Ringwald
7b8f2e5c7a sm: use IRK prefix for address resolution state 2015-08-19 15:03:15 +02:00
Matthias Ringwald
9f9b1721e1 sm: manage global signing counter 2015-08-19 14:43:41 +02:00
Matthias Ringwald
5fcb62a185 reset state after CMAC calculation 2015-08-19 12:57:38 +02:00
Matthias Ringwald
78b8321e18 sm: central uses stored ltk only when requested by client or peripheral 2015-08-14 18:36:44 +02:00
Matthias Ringwald
acae6a5093 sm: use public address for le device db lookup 2015-08-14 16:00:07 +02:00
Matthias Ringwald
ec0f2af932 use SM_RESPONDER_PH1_W4_PAIRING_REQUEST only after sending security request 2015-08-13 14:28:39 +02:00
Matthias Ringwald
0db5c26b03 sm: prefix all ph4 states with responder, finished sorting sm_general_idle 2015-08-13 14:23:36 +02:00
Matthias Ringwald
5f62024dd4 handle encryption key refresh event 2015-08-13 13:04:27 +02:00
Matthias Ringwald
9b3c2e0ccc sm: map most sm_general_idle to sm_initiator_connected or sm_responder_idle 2015-08-13 12:41:05 +02:00
Matthias Ringwald
67f4e4579f sm: prepare replacing sm_general_idle with sm_responder_idle 2015-08-13 12:36:02 +02:00
Matthias Ringwald
2b91d5f501 store encryption key size, authenticated, authorized in le_device_db and provide for current connection 2015-08-13 11:00:41 +02:00
Matthias Ringwald
30fdc0d7f4 sm: continue after trigger user response in master role 2015-08-12 17:26:13 +02:00
Matthias Ringwald
264d2bd80e fix build 2015-08-07 23:38:17 +02:00
Matthias Ringwald
3f6c2cdd26 sm: only request encryption information if bonding enabled 2015-08-07 23:34:01 +02:00
Matthias Ringwald
6191541dd0 sm: handle security request in master role 2015-08-07 22:39:57 +02:00
Matthias Ringwald
e8d5dc2445 sm: update existing le device db entry, fix use of ediv/rand/ltk of bonded connections 2015-08-05 15:48:53 +02:00
Matthias Ringwald
68b0e067d4 sm: use peer address in client notifications instead of master address 2015-08-05 12:11:31 +02:00
Matthias Ringwald
46452f47d3 sm: remove debug message 2015-08-04 14:40:43 +02:00
Matthias Ringwald
2de22786db sm: implement general address resolution using linked list 2015-08-04 13:59:51 +02:00
Matthias Ringwald
d3862db066 sm: convert address resolution into state machine 2015-08-04 12:13:14 +02:00
Matthias Ringwald
2e71710150 sm: introduce address resolution events and mode 2015-08-04 11:28:53 +02:00
Matthias Ringwald
53544995a3 extract sm_address_resolution_succeeded and _failed 2015-08-03 17:43:34 +02:00
Matthias Ringwald
ce1e26281b make address resolution/identify resolving public 2015-07-31 16:59:07 +02:00
Matthias Ringwald
3299fc1742 rename sm_address_resolution_device* into sm_address_resolution* 2015-07-31 16:25:27 +02:00
Matthias Ringwald
69d313c5b0 rename sm_central_device* into sm_address_resolution* 2015-07-31 16:19:02 +02:00
Matthias Ringwald
07a9209480 generalize sm_csrk context arguments 2015-07-31 15:59:18 +02:00
Matthias Ringwald
71b2c14530 generalize context argument for aes128 and random number generation 2015-07-31 15:55:31 +02:00
Matthias Ringwald
341d229cfc fix list of expected keys in master role, trigger sm_run on sm_authorization_request 2015-07-30 23:28:46 +02:00
Milanka Ringwald
c4350632cc annotate/update api, handle multiline function def 2015-07-01 17:04:51 +02:00
Matthias Ringwald
45c102fdda add helper hci_le_advertisements_set_params function to avoid call to sm from hci, gap ddvertisement control complete 2015-06-12 19:28:46 +02:00
Matthias Ringwald
9cc64000ad provide getter for random address mode 2015-06-11 23:12:25 +02:00
Matthias Ringwald
f243b7dfe2 fix compile error from last commit 2015-05-21 15:48:14 +02:00
Matthias Ringwald
4fdd1cade1 handle call to sm_send_security_request before hci le connection complete was handled in sm 2015-05-21 15:45:55 +02:00
Matthias Ringwald
71de195ed3 fix c99 warnings for missing argument of functions with no arguments, fix more warnings 2015-05-13 10:30:46 +02:00