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 support for optional MRP parameters in CASE #10019

Closed
todo bot opened this issue Sep 28, 2021 · 3 comments
Closed

Add support for optional MRP parameters in CASE #10019

todo bot opened this issue Sep 28, 2021 · 3 comments
Assignees
Labels

Comments

@todo
Copy link

todo bot commented Sep 28, 2021

// TODO: Add support for optional MRP parameters
ReturnErrorOnFailure(tlvWriter.EndContainer(outerContainerType));
ReturnErrorOnFailure(tlvWriter.Finalize(&msg_R2_resume));
// The state is being updated here before the message is successfully sent.
// This is done here due to limitation in unit test harness, where the SendMessage() immediately calls
// the OnMessageReceived(). If mState was updated after SendMessage, the receive will fail in unit tests.
// TODO: Update secure session SendMessage() unit test harness to do asynchronous send and receives.
mState = kSentSigma2Resume;


This issue was generated by todo based on a TODO comment in 7544281 when #9904 was merged. cc @pan-apple.
@todo todo bot added the todo label Sep 28, 2021
@todo todo bot assigned pan-apple Sep 28, 2021
@pan-apple pan-apple changed the title Add support for optional MRP parameters Add support for optional MRP parameters in CASE Dec 1, 2021
@pan-apple pan-apple assigned pan-apple and unassigned pan-apple Dec 1, 2021
@pan-apple
Copy link
Contributor

@billwatersiii FYI

@pan-apple
Copy link
Contributor

The following changes are needed.

  1. Add a structure for MRP Parameters to PairingSession.h. Or, reuse ReliableMessageProtocolConfig.
  2. Update CASESession::EstablishSession(), and CASESession::ListenForSessionEstablishment() to have an optional parameter for MRP Parameters.
  3. Save the provided parameter as part of CASESession object.
  4. In CASESession::SendSigma1(), CASESession::SendSigma2(), and CASESession::SendSigma2Resume(), if the optional MRP parameters were provided, include the values in the Sigma1 message as per spec TLV format.
  5. On receive of these messages, check if the message has the optional TLV elements. If the values are there, extract and call SetMRPConfig() on CASESession object.

@pan-apple
Copy link
Contributor

Fixed by #12705

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants