This fixes regression caused by 33cdfcb0fabcfb5260953a13ae277b5abe9a322d. Temporary link key should be removed after device is disconnected if bonding information is not stored in file system. Currently, the key is deleted only when paired device is removed, or adapter is powered off. In case of No Bonding authentication, device is not paired after disconnection, which results in link key left in memory. On the other hand, device is not necessarily removed after disconnection that also leaves unneeded temporary link key in memory. --- src/device.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) diff --git a/src/device.c b/src/device.c index 9dd657c..f323bf8 100644 --- a/src/device.c +++ b/src/device.c @@ -855,8 +855,10 @@ void device_remove_connection(struct btd_device *device, DBusConnection *conn) device->disconnects = g_slist_remove(device->disconnects, msg); } - if (device_is_paired(device) && !device_is_bonded(device)) + if (device_is_paired(device) && !device_is_bonded(device)) { + btd_adapter_remove_bonding(device->adapter, &device->bdaddr); device_set_paired(device, FALSE); + } emit_property_changed(conn, device->path, DEVICE_INTERFACE, "Connected", -- 1.7.4.1 -- To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html