Thread (10 messages) 10 messages, 2 authors, 2012-01-30

Re: [PATCHv2 0/4] Add support for bonding callbacks and retrying

From: Marcel Holtmann <marcel@holtmann.org>
Date: 2012-01-30 21:51:32

Hi Scott,
quoted
quoted
This adds plugin support for a callback called when bonding completes,
either successfully or fails, or is cancelled. In the success or failure
cases the callback may return TRUE, in which case the bonding is retried
after a short backoff period.
yesterday Johan and talked about this a little bit and I just wanna
quickly iterate some small comments here.
Great!
quoted
So we should only allow retrying when we initiated the bonding. If the
other side started the pairing, then retrying should not even be
considered.
I thought I put a check in for that, but I've just realized that after
I separated out the autopair and the keyboard pairing stuff, that
check ended up only in the keyboard pairing side.

My intent was this entire path should be only when the host initiated
the bonding, not the client.
to be honest, I did not get further into actually checking the code
itself. I just wanted to ensure we are on the same and expecting how
this is suppose to work ;)
quoted
We have to also ensure that we do not disconnect the ACL in between the
retry attempts. Otherwise some car kits might cancel their pairing
procedure and you have to have user interaction to get it back into
pairing mode. So if the ACL gets disconnect, then we should just fail
and cancel the bonding.
In my testing, OS X/iOS drop the ACL between retry attempts - so we
wouldn't be any worse than they are. I'm not sure whether it's even
possible in bluez to avoid dropping the ACL?
Is Apple doing retried pairing (or auto-pairing) as well?

Strictly speaking the ACL disconnect is host stack triggered. So you
have HCI_Authentication_Requested and you can just execute that again
with the same link. We also do have a ACL disconnect timeout handling of
2 seconds that will allow sockets to re-use the same ACL link. Can you
provide some hcidump traces from your test cases?

Regards

Marcel

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help