Hi Szymon, On Mon, Nov 19, 2012, Szymon Janc wrote: > OOB authentication mechanism should be used only if pairing process > has been activated by previous OOB information exchange (Core Spec > 4.0 , vol. 1, Part A, 5.1.4.3). Stored OOB data for specific device > should be removed if that device was discovered in band later on. > > Signed-off-by: Szymon Janc <szymon.janc@xxxxxxxxx> > --- > > This could also be done by userspace but would require calling remove remote > OOB data mgmt command for every device found. Userspace could also track for > which devices OOB data were added but this could be problematic as OOB data > persists userspace restart. Doing it in kernel seems better. > > > net/bluetooth/hci_event.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c > index 9f5c5f2..cda5bac 100644 > --- a/net/bluetooth/hci_event.c > +++ b/net/bluetooth/hci_event.c > @@ -1946,6 +1946,8 @@ static void hci_inquiry_result_evt(struct hci_dev *hdev, struct sk_buff *skb) > for (; num_rsp; num_rsp--, info++) { > bool name_known, ssp; > > + hci_remove_remote_oob_data(hdev, &info->bdaddr); > + > bacpy(&data.bdaddr, &info->bdaddr); > data.pscan_rep_mode = info->pscan_rep_mode; > data.pscan_period_mode = info->pscan_period_mode; Why would you do this only in hci_inquiry_result_evt? What about hci_extended_inquiry_result_evt and hci_inquiry_result_with_rssi_evt? Maybe hci_inquiry_cache_update would be a better function to put this into. Johan -- 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