-
Notifications
You must be signed in to change notification settings - Fork 2k
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
Use DataModel::Provider provided command information to handle command validation #35897
base: master
Are you sure you want to change the base?
Use DataModel::Provider provided command information to handle command validation #35897
Conversation
Review changes with SemanticDiff. |
PR #35897: Size comparison from cc6c773 to af7552f Full report (16 builds for linux)
|
PR #35897: Size comparison from cc6c773 to 129ad24 Full report (9 builds for cc32xx, nxp, stm32)
|
PR #35897: Size comparison from cc6c773 to b08d16e Full report (88 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, nrfconnect, nxp, psoc6, qpg, stm32, telink, tizen)
|
Access::Privilege requestPrivilege = RequiredPrivilege::ForInvokeCommand(concretePath); | ||
err = Access::GetAccessControl().Check(subjectDescriptor, requestPath, requestPrivilege); | ||
if (err != CHIP_NO_ERROR) | ||
Status preCheckStatus = mpCallback->ValidateCommandCanBeDispatched(request); |
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.
Group commands seem to not validate fabric scoped
nor timed invoke
flags in previous implementations.
I am unclear why. @bzbarsky-apple @tcarmelveilleux is this a spec requirement? Wondering if I should add that logic (i.e. pass in that the command was invoked via group handling) to the validation or not .... To me it would make sense for validation to be uniform so I left it like that here.
PR #35897: Size comparison from dc3fcc8 to 4ec72e5 Full report (78 builds for cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, nrfconnect, nxp, psoc6, qpg, stm32, telink, tizen)
|
When data model provider interface is available, the code now can use the data model flags for commands (required ACL, flags for needing timed invokes or being scoped) rather than direct generated-code dependencies.