-
Notifications
You must be signed in to change notification settings - Fork 2.1k
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
Revert "Cancel incomplete BLE connection when CloseAllBleConnections() is called (#27304)" #28143
Revert "Cancel incomplete BLE connection when CloseAllBleConnections() is called (#27304)" #28143
Conversation
…) is called (project-chip#27304)" This reverts commit ad5403e. There are two issues: * project-chip#27607 which has had no response for weeks. * project-chip#28139 which breaks commissioning on Mac, and would break it on Linux if it implemented BLE connection cancellation. We need to sort out why CHIPDeviceController is canceling BLE connections when starting PASE over BLE (!).
@bzbarsky-apple The change makes logical sense though, to cancel any connections being established though? Why is this causing issues? |
@woody-apple Because of this stack:
Now why we end up doing |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we should revert as you suggest. The original patch may probably be retargeted to call mSystemState->BleLayer()->CancelBleIncompleteConnection();
in DeviceCommissioner::OnSessionEstablishmentError
.
Something like:
void DeviceCommissioner::OnSessionEstablishmentError(CHIP_ERROR err)
{
...
if (mPairingDelegate != nullptr)
{
mPairingDelegate->OnStatusUpdate(DevicePairingDelegate::SecurePairingFailed);
}
auto device = self->mDeviceInPASEEstablishment;
if (nullptr != device && device->GetDeviceTransportType() == Transport::Type::kBle)
{
mSystemState->BleLayer()->CancelBleIncompleteConnection();
}
RendezvousCleanup(err);
}
This reverts commit ad5403e.
There are two issues:
We need to sort out why CHIPDeviceController is canceling BLE connections when starting PASE over BLE (!).
Fixes #28139