From: injun.yang Date: Tue, 3 Mar 2020 08:47:28 +0000 (+0900) Subject: Fix : slave long term key is not loaded X-Git-Tag: accepted/tizen/unified/20200305.123315^0 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=refs%2Fchanges%2F72%2F226572%2F2;p=platform%2Fupstream%2Fbluez.git Fix : slave long term key is not loaded [Model] All [BinType] AP [Customer] OPEN [Issue#] N/A [Request] Internal [Occurrence Version] N/A [Problem] Request LE pairing again to paired device. [Cause & Measure] After BT off/on, slave long term key is not loaded. [Checking Method] Test with iOS GM [Team] Convergence BT [Developer] Injun Yang [Solution company] Samsung [Change Type] Specification change Change-Id: I4191331b69b892891e02f904554eb7733e3eabe6 --- diff --git a/src/adapter.c b/src/adapter.c index a293466..52ecbd6 100644 --- a/src/adapter.c +++ b/src/adapter.c @@ -8583,6 +8583,14 @@ static void load_devices(struct btd_adapter *adapter) ltks = g_slist_append(ltks, ltk_info); } + if (slave_ltk_info) { + ltks = g_slist_remove(ltks, slave_ltk_info); + slave_ltk_info = get_slave_ltk_info(key_file, + idaddr, bdaddr_type); + if (slave_ltk_info) + ltks = g_slist_append(ltks, slave_ltk_info); + } + if (irk_info) { str2ba(idaddr, &irk_info->bdaddr); device_set_irk_value(device, irk_info->val);