summaryrefslogtreecommitdiffstats
path: root/vendor/r-efi/src/protocols/service_binding.rs
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/r-efi/src/protocols/service_binding.rs')
-rw-r--r--vendor/r-efi/src/protocols/service_binding.rs20
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,
+}