Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add fallback to next IP when trying to send a Sigma1 or PBKDFParamRequest message fails #26307

Closed
bzbarsky-apple opened this issue Apr 29, 2023 · 0 comments · Fixed by #26308
Closed
Assignees

Comments

@bzbarsky-apple
Copy link
Contributor

bzbarsky-apple commented Apr 29, 2023

If we get back a list of IPs and some of them are not routable, trying to call EstablishConnection on one of those will fail and we will just abort the PASE or CASE setup process. Instead we should move on to the next IP in the list, if there is one.

@bzbarsky-apple bzbarsky-apple self-assigned this Apr 29, 2023
@bzbarsky-apple bzbarsky-apple changed the title Add fallback to next IP when OperationalSessionSetup::EstablishConnection fails Add fallback to next IP when trying to send a Sigma1 or PBKDFParamRequest message fails Apr 29, 2023
bzbarsky-apple added a commit to bzbarsky-apple/connectedhomeip that referenced this issue Apr 29, 2023
…fails.

If DNS-SD discovery comes back with an IP that is not routable for some reason,
or if there os some other synchronous error when trying to kick off session
establishment, move on to the next IP (just like we would for an async session
establishment error), instead of just aborting the session establishment process
altogether.

The change in SetUpCodePairer::ConnectToDiscoveredDevice just moves on to the
next element in our list, if any.

The change in OperationalSessionSetup::UpdateDeviceData adds the TryNextResult
call, but also restructures things to have early returns instead of deep nesting
of ifs.

Fixes project-chip#26307
bzbarsky-apple added a commit that referenced this issue May 4, 2023
…fails. (#26308)

If DNS-SD discovery comes back with an IP that is not routable for some reason,
or if there os some other synchronous error when trying to kick off session
establishment, move on to the next IP (just like we would for an async session
establishment error), instead of just aborting the session establishment process
altogether.

The change in SetUpCodePairer::ConnectToDiscoveredDevice just moves on to the
next element in our list, if any.

The change in OperationalSessionSetup::UpdateDeviceData adds the TryNextResult
call, but also restructures things to have early returns instead of deep nesting
of ifs.

Fixes #26307
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
1 participant