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

[BUG] All devmod modules should be sent by conformance client in message 68 and to be accepted by conformance owner #75

Open
3 of 6 tasks
Sai-Anudeep47 opened this issue Mar 4, 2024 · 1 comment · May be fixed by #77

Comments

@Sai-Anudeep47
Copy link

Sai-Anudeep47 commented Mar 4, 2024

To simplify issue resolution process, please provide network logs, and or test voucher.
conformance_client_devmod_sims_log.txt

What part of the spec are you testing?

  • Rendezvous Server
  • Device Onboarding Service
  • Device Implementation

What protocol are having issue with?

  • TO0
  • TO1
  • TO2

Issue description

  • Custom Client with conformance owner

    • When a client is onboarding with conformance owner, following error is observed on conformance owner logs
    Error validating device sims: missing mandatory SIMs: devmod:active,devmod:os,devmod:arch,devmod:version,devmod:device,devmod:sep,devmod:bin,devmod:nummodules,devmod:modules
    
    • The error is because the client is sending all devmod modules as below and conformance owner is unable to parse the same.
    [false, [["devmod:active", h'F5'], ["devmod:os", h'654C696E7578'], ["devmod:arch", h'63783836'], ["devmod:version", h'695562756E74752D3134'], ["devmod:device", h'6F496E74656C2D46444F2D4C696E7578'], ["devmod:sn", h'6E66646F2D6C696E75782D31323334'], ["devmod:pathsep", h'612F'], ["devmod:sep", h'613B'], ["devmod:nl", h'610A'], ["devmod:tmp", h'60'], ["devmod:dir", h'60'], ["devmod:progenv", h'627368'], ["devmod:bin", h'63783836'], ["devmod:mudurl", h'60'], ["devmod:nummodules", h'03'], ["devmod:modules", h'8503036766646F5F7379736C66646F2E646F776E6C6F61646B66646F2E636F6D6D616E64']]]
    
    • But according to specification here, all devmod modules to be sent by client in a single message as part of message 68.
  • Conformance Client with Custom Owner

    • It is observed that conformance client sends devmod moudles one after another, as atatched which is not in accordance with spec link as mentioned above.
  • Tested on commit 7a94396

@ben-krieger
Copy link

To add more detail to this bug report, the reason that the error reads as all mandatory SIMs missing despite them all being sent (in a single message) is due to the fact that the code only gathers the SIMs from messages where IsMoreServiceInfo=true.

Therefore, the conformance tests are implicitly requiring that >1 message from the device must be sent and the last message (the one with IsMoreServiceInfo=false) must be empty, as any devmod SIMs will be ignored.

This bug has now been reproduced with a different client implementation that sends the SIMs over two messages, sending the "devmod:modules" KV in the second message. Because the second message has IsMoreServiceInfo=false, the error message instead only indicates "devmod:modules" as a missing required SIM.

I will open a very simple PR to address the bug in the conformance test.

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