diff options
Diffstat (limited to 'vendor/r-efi/src/protocols/service_binding.rs')
-rw-r--r-- | vendor/r-efi/src/protocols/service_binding.rs | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/vendor/r-efi/src/protocols/service_binding.rs b/vendor/r-efi/src/protocols/service_binding.rs new file mode 100644 index 000000000..67c69f91f --- /dev/null +++ b/vendor/r-efi/src/protocols/service_binding.rs @@ -0,0 +1,20 @@ +//! Service Binding Protocol +//! +//! Provides services that are required to create and destroy child handles +//! that support a given set of protocols. + +pub type ProtocolCreateChild = eficall! {fn( + *mut Protocol, + *mut crate::base::Handle, +) -> crate::base::Status}; + +pub type ProtocolDestroyChild = eficall! {fn( + *mut Protocol, + crate::base::Handle, +) -> crate::base::Status}; + +#[repr(C)] +pub struct Protocol { + pub create_child: ProtocolCreateChild, + pub destroy_child: ProtocolDestroyChild, +} |