Skip to content

Add the UpdateSecurityRevision FdOps callback - #27

Open
chrysh wants to merge 1 commit into
mainfrom
update-security-revision-fdops-trait
Open

chrysh wants to merge 1 commit into
mainfrom
update-security-revision-fdops-trait

Conversation

@chrysh

@chrysh chrysh commented Sep 29, 2026

Copy link
Copy Markdown
Contributor

PR #22 added the UpdateSecurityRevision (0x22) message layer. This adds the
callback the firmware device needs to act on it. The dispatch and responder
that call it are the next PR, based on this branch.

FdOps::update_security_revision(target, fw_params) takes a decoded
SecurityRevisionTarget and answers Updated or NotPermitted. The target
decodes the 0xFFFF classification once, so an implementor never re-reads the
raw fields to tell a component from one or all downstream devices.

The method is required, no default, like get_non_functional_component_info
in #24: a default answering "revision committed" would tell the UA the floor
moved while the old image stayed installable.

Breaking for out-of-repo FdOps implementors. openprot needs one method on
its four MockFdOps plus the real impl, on top of now (#19),
handle_pending_component (#20) and get_non_functional_component_info (#24).

The FD side of UpdateSecurityRevision (0x22) needs a callback to raise the
security revision floor of the active running image. It is a required method,
like get_non_functional_component_info (#24): a default that answered "revision
committed" would tell the UA the floor moved while the old image stayed
installable.

The typed `SecurityRevisionTarget` and `SecurityRevisionResult` live next to the
message in pldm-common. The target decodes the 0xFFFF classification once, so an
implementor never re-reads the raw fields to tell a component from one or all
downstream devices.

Assisted-by: Claude
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant