#[repr(C)]
pub struct ShimLock { /* private fields */ }
Available on target_arch="i386" or x86-64 or ARM or AArch64 only.
Expand description

The Shim lock protocol.

This protocol is not part of the UEFI specification, but is installed by the Shim bootloader which is commonly used by Linux distributions to support UEFI Secure Boot. Shim is built with an embedded certificate that is used to validate another EFI application before running it. That application may itself be a bootloader that needs to validate another EFI application before running it, and the shim lock protocol exists to support that.

Implementations

Verify that an EFI application is signed by the certificate embedded in shim.

The buffer’s size must fit in a u32; if that condition is not met then a BAD_BUFFER_SIZE error will be returned and the shim lock protocol will not be called.

Compute the Authenticode Hash of the provided EFI application.

The buffer’s size must fit in a u32; if that condition is not met then a BAD_BUFFER_SIZE error will be returned and the shim lock protocol will not be called.

Trait Implementations

Unique protocol identifier.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Create a const pointer to a Protocol from a c_void pointer. Read more

Create a mutable pointer to a Protocol from a c_void pointer. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.