Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Ensure that we shut down open exchanges when controller shuts down.
We already handled shutdown of any ongoing PASE bits. This PR adds two more things: 1) Shutting down any ongoing CASE session establishment exchanges for which we are the initiator. This is done by shutting down all the operational device proxies on our mCASESessionManager (since we own all of those anyway) and fixing operational device proxy shutdown/destruction to actually clean up the CASEClient if we're still in the middle of CASE establishment. 2) Expiring the SecureSessions for our fabric, so that any still-open operational exchanges for those sessions get closed correctly (with a timeout). This is needed because our client cluster APIs don't give us any way to cancel the operation (invoke, read, write, etc) and we need to make sure those get cleaned up when we shut down. Fixes #15760
- Loading branch information