Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Implement users and credentials in the Door Lock Cluster (#13789)
* Make nextUserIndex nullable in Door Lock as it is required by spec. * Initial implementation of Get/Set/Clear User command. * Refactor User-related commands in Door Lock Cluster * Minor tweaks in commands logging, add todos for events. * Properly handle nullable command arguments in chip-tool * Make more door lock command arguments nullable * Add placeholder implementation for the set credential command * Add missing argument to SetCredential command in Door Lock CLuster * Add basic SetCredential handler for Door Lock cluster. * Add YAML tests for Door Lock cluster (users/credentials) * Adjust underlying data structures for sample Door Lock credentials manager. * Move command handler to the door lock server class * A touch of clean-up in the Door Lock Server. * Add features bitmap to the Door Lock Cluster. * Implement GetCredentialStatus command in Door Lock Cluster. * Fix the door lock cluster feature checks. * Small refactoring of GetCredentialStatus. * Enable RFID attributes in the all-clusters app for now. * Refactor SetCredential command. * Replace unnecessary parameters in the user management of the door lock. * Reorder door lock server functions. Fix compiler errors * Check credential data range * Add documentation for application callbacks related to user management in Door Lock cluster. * Use Span for username and credentials. * Implement ability to modify credentials. * Change ZAP files for door lock app to include all necessary features * Don't use 'using namespace' in header files * Move users/credential database implementation to the door-lock-app. * Remove debug prints in the door lock cluster. * Add more verbose logging to the door lock app. * Make door-lock XML compliant to spec * Add clear credential command * Update door lock test suite to excercise ClearCredential command * Add Lock User Change event to Door Lock Cluster * Use credentials instead of hard-coded PIN when operating the lock * Support programming PIN * Refactor SetCredential command handler * Temporary make credential parameter in clearCredential command nullable to avoid generator errors * Bring back definition to make ESP32 builds work again * Fix format strings and leave out clearCredential logic that is not longer supported * Use appropriate format strings for logging in door lock cluster. * Add implicit casts when adding uint16_t variables to make compiler happy * Temporally ignore Door Lock tests when starting all test. - This is done to avoid fixing github actions for now. - I would like to address the github stuff as a separate fix. * Fix logging types in the door lock app * Fix styling issues * Clear the associated credentials when clearing the user * Make argument in ClearCredential command nullable again because recent changes improved the ZAP generator * Update auto-generated files
- Loading branch information