diff options
author | Luiz Augusto von Dentz <luiz.von.dentz@intel.com> | 2015-02-25 12:39:42 +0200 |
---|---|---|
committer | Luiz Augusto von Dentz <luiz.von.dentz@intel.com> | 2015-02-26 15:27:34 +0200 |
commit | cec14a602d27f7f4fd486f8a8a5f3f15aa994afc (patch) | |
tree | 5463cbdf3d64209ad2766a5f24f58cfdb1938c2c /src | |
parent | 825fa14fba8ab45be894f63ee516f1281a9713fb (diff) | |
download | bluez-cec14a602d27f7f4fd486f8a8a5f3f15aa994afc.tar.gz |
core: Store signature counters
This stores signature counters in LocalSignatureCounter and
RemoteSignatureCounter entries so they can be reloaded later.
Diffstat (limited to 'src')
-rw-r--r-- | src/adapter.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/adapter.c b/src/adapter.c index 33532977e..32faa261d 100644 --- a/src/adapter.c +++ b/src/adapter.c @@ -6156,7 +6156,7 @@ static void new_long_term_key_callback(uint16_t index, uint16_t length, static void store_csrk(const bdaddr_t *local, const bdaddr_t *peer, uint8_t bdaddr_type, const unsigned char *key, - uint8_t master) + uint32_t counter, uint8_t master) { const char *group; char adapter_addr[18]; @@ -6190,6 +6190,7 @@ static void store_csrk(const bdaddr_t *local, const bdaddr_t *peer, sprintf(key_str + (i * 2), "%2.2X", key[i]); g_key_file_set_string(key_file, group, "Key", key_str); + g_key_file_set_integer(key_file, group, "Counter", counter); create_file(filename, S_IRUSR | S_IWUSR); @@ -6230,7 +6231,7 @@ static void new_csrk_callback(uint16_t index, uint16_t length, if (!ev->store_hint) return; - store_csrk(bdaddr, &key->addr.bdaddr, key->addr.type, key->val, + store_csrk(bdaddr, &key->addr.bdaddr, key->addr.type, key->val, 0, key->master); if (device_is_temporary(device)) |