#[repr(C)]pub struct Interface {
pub structure_size: u32,
pub abi_version: u32,
pub information: Option<ReadInformation>,
pub probe: Option<Probe>,
pub verification_algorithms: Option<CheckVerificationAlgorithms>,
pub verify: Option<Verify>,
pub digest: Option<Digest>,
pub release: Option<Release>,
}Expand description
Function pointers use the C calling convention on every supported target. Every request receives its structure size; mismatched sizes are refused before dereferencing fields. Valid output slots are empty/zero on non-OK return; invalid output size/alignment is rejected without accessing that storage. Probe prepares the exact operation without signing or issuing any PKCS#11 call.
Fields§
§structure_size: u32Size in bytes of this exact Interface representation.
abi_version: u32Version governing the layout and service contracts.
information: Option<ReadInformation>Optional version-information service; Fe11 requires it when selecting an engine.
probe: Option<Probe>Optional exact-key verification preparation service.
verification_algorithms: Option<CheckVerificationAlgorithms>Optional keyless implementation-availability service.
verify: Option<Verify>Optional message/signature verification service; requires the preparation service.
digest: Option<Digest>Optional whole-message hashing service; returned allocations require release.
release: Option<Release>Optional originating-allocator release service for OwnedBytes results.