#[repr(C)]pub struct TcgProtocol {
pub status_check: unsafe extern "efiapi" fn(this: *mut Self, protocol_capability: *mut TcgBootServiceCapability, feature_flags: *mut u32, event_log_location: *mut PhysicalAddress, event_log_last_entry: *mut PhysicalAddress) -> Status,
pub hash_all: unsafe extern "efiapi" fn(this: *mut Self, hash_data: *const u8, hash_data_len: u64, algorithm_id: u32, hashed_data_len: *mut u64, hashed_data_result: *mut *mut u8) -> Status,
pub log_event: unsafe extern "efiapi" fn(this: *mut Self, event: *const c_void, event_number: *mut u32, flags: u32) -> Status,
pub pass_through_to_tpm: unsafe extern "efiapi" fn(this: *mut Self, tpm_input_parameter_block_size: u32, tpm_input_parameter_block: *const u8, tpm_output_parameter_block_size: u32, tpm_output_parameter_block: *mut u8) -> Status,
pub hash_log_extend_event: unsafe extern "efiapi" fn(this: *mut Self, hash_data: PhysicalAddress, hash_data_len: u64, algorithm_id: u32, event: *mut c_void, event_number: *mut u32, event_log_last_entry: *mut PhysicalAddress) -> Status,
}
Expand description
Protocol for interacting with TPM 1.1 and 1.2 devices.
Fields§
§status_check: unsafe extern "efiapi" fn(this: *mut Self, protocol_capability: *mut TcgBootServiceCapability, feature_flags: *mut u32, event_log_location: *mut PhysicalAddress, event_log_last_entry: *mut PhysicalAddress) -> Status
§hash_all: unsafe extern "efiapi" fn(this: *mut Self, hash_data: *const u8, hash_data_len: u64, algorithm_id: u32, hashed_data_len: *mut u64, hashed_data_result: *mut *mut u8) -> Status
§log_event: unsafe extern "efiapi" fn(this: *mut Self, event: *const c_void, event_number: *mut u32, flags: u32) -> Status
§pass_through_to_tpm: unsafe extern "efiapi" fn(this: *mut Self, tpm_input_parameter_block_size: u32, tpm_input_parameter_block: *const u8, tpm_output_parameter_block_size: u32, tpm_output_parameter_block: *mut u8) -> Status
§hash_log_extend_event: unsafe extern "efiapi" fn(this: *mut Self, hash_data: PhysicalAddress, hash_data_len: u64, algorithm_id: u32, event: *mut c_void, event_number: *mut u32, event_log_last_entry: *mut PhysicalAddress) -> Status
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl Freeze for TcgProtocol
impl RefUnwindSafe for TcgProtocol
impl Send for TcgProtocol
impl Sync for TcgProtocol
impl Unpin for TcgProtocol
impl UnwindSafe for TcgProtocol
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more