Skip to content
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

Update sev library dependency and minor version #123

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

tylerfanelli
Copy link
Member

No description provided.

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Signed-off-by: Tyler Fanelli <[email protected]>
Signed-off-by: Tyler Fanelli <[email protected]>
@@ -49,7 +49,7 @@ mod set {

pub fn set_config(args: Args) -> Result<()> {
// Create Tcb with provided values
let tcb = TcbVersion::new(args.bootloader, args.tee, args.snp_fw, args.microcode);
let tcb = TcbVersion::new(None, args.bootloader, args.tee, args.snp_fw, args.microcode);
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@larrydewey @DGonzalezVillal I've set this to None as we don't currently have a way for the user to specify the FMC firmware version. Is this alright for now?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So we found out that Turin has this new fmc TCB value, so if the machine is a turin then fmc is present. We originally thought this was being brought in a new fw, but apparently this has always been the case.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So what should a user set the value to be? Where would they find the relevant FMC data?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So, FMC is one of the fields added to the Turin+ TCB structures. With the library changes we implemented, I believe that whenever the TCB is checked, it will verify the CPU model version and populate the correct structure accordingly. If a user runs snphost ok, they should be able to see their current TCB version.

The expected behavior here is that if a user provides an FMC value, the library should automatically determine whether the TCB structure includes it. If the CPU is Turin or newer, the value should be set; if it is Genoa or Milan, the input should either be ignored or return an error.

The value should be of type u8.

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.

None yet

3 participants