-
Notifications
You must be signed in to change notification settings - Fork 24
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
GH-22: Fix Multi Channel Handling of Secure NIF #22
Conversation
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.
Build: https://github.com/nkljajic/UnifySDK/actions/runs/7016067209/job/19086528904
Forwarded-SiliconLabs: task/UIC-3082/phcoval/GH-22/develop
Tests might need to be revised, current results:
|
Some S0 multichannel endpoints will not respond to multichannel encapsulated SECURITY_COMMANDS_SUPPORTED_GET command [ 60 0D 00 01 98 02 ]. In such case, copy endpoint NIF to Secure NIF. For reference, see: Z-Wave Transport-Encapsulation Command Class Specification 3.5.4.1 Multi Channel Handling The implicit rule that all non-secure command classes for an End Point must be controllable securely is still in effect, if the endpoint is reported secure. Signed-off-by: Nenad Kljajic <nkljajic@control4.com>
Let's try to resolve this on your branch: |
don't bother looking we fixed it you can merge this PR: Then expect an other PR from us that fix test like I've done before |
SiliconLabsGH-14: Enable testing by default
Some S0 multichannel endpoints will not respond to multichannel encapsulated SECURITY_COMMANDS_SUPPORTED_GET command [ 60 0D 00 01 98 02 ]. In such case, copy endpoint NIF to Secure NIF. For reference, see: Z-Wave Transport-Encapsulation Command Class Specification 3.5.4.1 Multi Channel Handling The implicit rule that all non-secure command classes for an End Point must be controllable securely is still in effect, if the endpoint is reported secure. Signed-off-by: Nenad Kljajic <nkljajic@control4.com>
5a26493
to
cbba778
Compare
Some S0 multichannel endpoints will not respond to multichannel encapsulated SECURITY_COMMANDS_SUPPORTED_GET command [ 60 0D 00 01 98 02 ]. In such case, copy endpoint NIF to Secure NIF. For reference, see: Z-Wave Transport-Encapsulation Command Class Specification 3.5.4.1 Multi Channel Handling The implicit rule that all non-secure command classes for an End Point must be controllable securely is still in effect, if the endpoint is reported secure. Signed-off-by: Nenad Kljajic <nkljajic@control4.com>
cbba778
to
84733be
Compare
SiliconLabsGH-22 add a new callback on the give_up_listener on the ATTRIBUTE_ZWAVE_SECURE_NIF attribute causing the test case to fail. The test only expect this listener to be called on the non-secure NIF ATTRIBUTE_ZWAVE_NIF. This change make sure that the code is only executed in the context of ATTRIBUTE_ZWAVE_NIF and ignored for ATTRIBUTE_ZWAVE_SECURE_NIF as this test don't care about it. Bug-SiliconLabs: UIC-3082 Relate-to: SiliconLabs#22 Forwarded-SiliconLabs: task/UIC-3082/phcoval/SiliconLabsGH-22/develop
We should be able to merge ; https://github.com/silabs-borisl/UnifySDK/actions/runs/7568335791/job/20609337322 |
attribute_store_node_t node_id_node | ||
= attribute_store_get_first_parent_with_type(secure_nif_node, ATTRIBUTE_NODE_ID); | ||
|
||
if (get_zpc_node_id_node() == node_id_node) { |
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.
nitpicking: refactor to avoid creating node_id_node
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.
compiler will optimize that extra variable ? will it ?
REPORTED_ATTRIBUTE, | ||
nif, | ||
&nif_length))) { | ||
uint8_t j=0; |
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.
nitpicking: add space before and after =
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.
Let's do this in a next patch (clang format will help)
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.
done
Bug-SiliconLabs: UIC-3082 Relate-to: SiliconLabs#22 Forwarded-SiliconLabs: task/UIC-3082/phcoval/SiliconLabsGH-22/develop Signed-off-by: Philippe Coval <philippe.coval@silabs.com>
Bug-SiliconLabs: UIC-3082 Relate-to: SiliconLabs#22 Forwarded-SiliconLabs: task/UIC-3082/phcoval/SiliconLabsGH-22/develop Origin: silabs-borisl#2 Signed-off-by: Philippe Coval <philippe.coval@silabs.com>
SiliconLabsGH-22: Lint code for SonarCube
Origin-SiliconLabs: ver_1.5.0-unstable-107-g1eb22d3fd |
SiliconLabsGH-22: Fix zwave_command_class_node_info_resolver unit test
Some S0 multichannel endpoints will not respond to multichannel encapsulated SECURITY_COMMANDS_SUPPORTED_GET command [ 60 0D 00 01 98 02 ]. In such case, copy endpoint NIF to Secure NIF. For reference, see: Z-Wave Transport-Encapsulation Command Class Specification 3.5.4.1 Multi Channel Handling The implicit rule that all non-secure command classes for an End Point must be controllable securely is still in effect, if the endpoint is reported secure. Signed-off-by: Nenad Kljajic <nkljajic@control4.com>
SiliconLabsGH-22 add a new callback on the give_up_listener on the ATTRIBUTE_ZWAVE_SECURE_NIF attribute causing the test case to fail. The test only expect this listener to be called on the non-secure NIF ATTRIBUTE_ZWAVE_NIF. This change make sure that the code is only executed in the context of ATTRIBUTE_ZWAVE_NIF and ignored for ATTRIBUTE_ZWAVE_SECURE_NIF as this test don't care about it. Bug-SiliconLabs: UIC-3082 Relate-to: SiliconLabs#22 Forwarded-SiliconLabs: task/UIC-3082/phcoval/SiliconLabsGH-22/develop
Bug-SiliconLabs: UIC-3082 Relate-to: SiliconLabs#22 Forwarded-SiliconLabs: task/UIC-3082/phcoval/SiliconLabsGH-22/develop Origin: silabs-borisl#2 Signed-off-by: Philippe Coval <philippe.coval@silabs.com>
8ebdf7f
to
1a34f42
Compare
Some S0 multichannel endpoints will not respond to multichannel encapsulated SECURITY_COMMANDS_SUPPORTED_GET command [ 60 0D 00 01 98 02 ]. In such case, copy endpoint NIF to Secure NIF. For reference, see: Z-Wave Transport-Encapsulation Command Class Specification 3.5.4.1 Multi Channel Handling The implicit rule that all non-secure command classes for an End Point must be controllable securely is still in effect, if the endpoint is reported secure. Signed-off-by: Nenad Kljajic <nkljajic@control4.com>
GH-22 add a new callback on the give_up_listener on the ATTRIBUTE_ZWAVE_SECURE_NIF attribute causing the test case to fail. The test only expect this listener to be called on the non-secure NIF ATTRIBUTE_ZWAVE_NIF. This change make sure that the code is only executed in the context of ATTRIBUTE_ZWAVE_NIF and ignored for ATTRIBUTE_ZWAVE_SECURE_NIF as this test don't care about it. Bug-SiliconLabs: UIC-3082 Relate-to: #22 Forwarded-SiliconLabs: task/UIC-3082/phcoval/GH-22/develop
Bug-SiliconLabs: UIC-3082 Relate-to: #22 Forwarded-SiliconLabs: task/UIC-3082/phcoval/GH-22/develop Origin: silabs-borisl#2 Signed-off-by: Philippe Coval <philippe.coval@silabs.com>
Change
Some S0 multichannel endpoints will not respond to multichannel encapsulated SECURITY_COMMANDS_SUPPORTED_GET command [ 60 0D 00 01 98 02 ]. In such case, copy endpoint NIF to Secure NIF.
For reference, see document:
https://sdomembers.z-wavealliance.org/document/dl/652
Z-Wave Transport-Encapsulation Command Class Specification
3.5.4.1 Multi Channel Handling
Page 46
The implicit rule that all non-secure command classes for an End Point must be controllable securely is still in effect, if the endpoint is reported secure.
Checklist