iPXE
Data Structures | Typedefs | Functions
ServiceBinding.h File Reference

UEFI Service Binding Protocol is defined in UEFI specification. More...

Go to the source code of this file.

Data Structures

struct  _EFI_SERVICE_BINDING_PROTOCOL
 The EFI_SERVICE_BINDING_PROTOCOL provides member functions to create and destroy child handles. More...
 

Typedefs

typedef struct _EFI_SERVICE_BINDING_PROTOCOL EFI_SERVICE_BINDING_PROTOCOL
 Forward reference for pure ANSI compatability. More...
 
typedef EFI_STATUS(EFIAPIEFI_SERVICE_BINDING_CREATE_CHILD) (IN EFI_SERVICE_BINDING_PROTOCOL *This, IN OUT EFI_HANDLE *ChildHandle)
 Creates a child handle and installs a protocol. More...
 
typedef EFI_STATUS(EFIAPIEFI_SERVICE_BINDING_DESTROY_CHILD) (IN EFI_SERVICE_BINDING_PROTOCOL *This, IN EFI_HANDLE ChildHandle)
 Destroys a child handle with a protocol installed on it. More...
 

Functions

 FILE_LICENCE (BSD2_PATENT)
 

Detailed Description

UEFI Service Binding Protocol is defined in UEFI specification.

The file defines the generic Service Binding Protocol functions. It provides services that are required to create and destroy child handles that support a given set of protocols.

Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent

Definition in file ServiceBinding.h.

Typedef Documentation

◆ EFI_SERVICE_BINDING_PROTOCOL

Forward reference for pure ANSI compatability.

Definition at line 21 of file ServiceBinding.h.

◆ EFI_SERVICE_BINDING_CREATE_CHILD

typedef EFI_STATUS(EFIAPI * EFI_SERVICE_BINDING_CREATE_CHILD) (IN EFI_SERVICE_BINDING_PROTOCOL *This, IN OUT EFI_HANDLE *ChildHandle)

Creates a child handle and installs a protocol.

The CreateChild() function installs a protocol on ChildHandle. If ChildHandle is a pointer to NULL, then a new handle is created and returned in ChildHandle. If ChildHandle is not a pointer to NULL, then the protocol installs on the existing ChildHandle.

Parameters
ThisPointer to the EFI_SERVICE_BINDING_PROTOCOL instance.
ChildHandlePointer to the handle of the child to create. If it is NULL, then a new handle is created. If it is a pointer to an existing UEFI handle, then the protocol is added to the existing UEFI handle.
Return values
EFI_SUCCESThe protocol was added to ChildHandle.
EFI_INVALID_PARAMETERChildHandle is NULL.
EFI_OUT_OF_RESOURCESThere are not enough resources available to create the child
otherThe child handle was not created

Definition at line 44 of file ServiceBinding.h.

◆ EFI_SERVICE_BINDING_DESTROY_CHILD

typedef EFI_STATUS(EFIAPI * EFI_SERVICE_BINDING_DESTROY_CHILD) (IN EFI_SERVICE_BINDING_PROTOCOL *This, IN EFI_HANDLE ChildHandle)

Destroys a child handle with a protocol installed on it.

The DestroyChild() function does the opposite of CreateChild(). It removes a protocol that was installed by CreateChild() from ChildHandle. If the removed protocol is the last protocol on ChildHandle, then ChildHandle is destroyed.

Parameters
ThisPointer to the EFI_SERVICE_BINDING_PROTOCOL instance.
ChildHandleHandle of the child to destroy
Return values
EFI_SUCCESThe protocol was removed from ChildHandle.
EFI_UNSUPPORTEDChildHandle does not support the protocol that is being removed.
EFI_INVALID_PARAMETERChild handle is NULL.
EFI_ACCESS_DENIEDThe protocol could not be removed from the ChildHandle because its services are being used.
otherThe child handle was not destroyed

Definition at line 69 of file ServiceBinding.h.

Function Documentation

◆ FILE_LICENCE()

FILE_LICENCE ( BSD2_PATENT  )