-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Implement ACL attribute read/write (#12305)
* Add access control server skeleton Add empty cluster implementation to all-clusters-app example. * Regen code. * Restyle code * Update from upstream changes * Restyle * Add access-control-server to CMakeLists.txt For esp32 and mbed, for all-clusters-app. * Remove nullable from list attribute Code gen isn't working yet for this possibility. * Regen and restyle * Regen and restyle * Fix test Descriptor cluster test expects certain clusters in certain order. (This is fragile and we should find a way to improve it, but just fix up the expected order for now.) * Regen and restyle * Regen and restyle * Regen and restyle * Regen and restyle * Regen and restyle * Regen and restyle * Add AccessControl cluster to Darwin test helper Until the tests use Descriptor cluster, they have a hardcoded list of clusters expected on endpoints, which must be kept accurate. * Remove AccessControl cluster from some tests Some Darwin tests are not relevant for this cluster (as for others). * Fix unless in test file Those special tags need to be closed. * Restyle and regen * Implement ACL attribute Just basic read/write of the entire list. - Not a specific index. - Not fabric-filtered. - Not with rollback if errors occur. Minor small changes to the AccessControl interface to support this work. Progress toward issue #10254 * Regen and restyle * Regen and restyle * Change extension attribute storage to RAM Until it's implemented in external storage, change its storage to RAM, so there's less issues with unimplemented cluster attributes. * Re-enable access control cluster tests Tests for ACL and extension attribute were disabled while these attributes were unimplemented. Now, ACL is implemented and extension has its storage moved to RAM (for now) so both should work. * Fix extension attribute Apparently the regen emits corrupt code if it doesn't have a length. * Restyle and regen * Change lambda arg to auto in access control server It was TagBoundEncoder, but now it's ListEncodeHelper. Also had to fix the perfect forwarding in AttributeValueEncoder and ListEncodeHelper and other template functions in the file, so it doesn't try to copy its args. * Add missing variable definitions These static constexpr member variables were declared but not defined. In C++14 and lower, the definitions are required. Otherwise, undefined reference ensues. C++17 handles this but Matter is still using C++14. Not sure why this was working before... * Regen and restyle
- Loading branch information
1 parent
ba969dc
commit 1237104
Showing
13 changed files
with
918 additions
and
454 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.