TianoCore EDK2 master
|
#include "RedfishDiscoverInternal.h"
Go to the source code of this file.
Variables | |
LIST_ENTRY | mRedfishDiscoverList |
LIST_ENTRY | mRedfishInstanceList |
EFI_SMBIOS_PROTOCOL * | mSmbios = NULL |
UINTN | mNumNetworkInterface = 0 |
UINTN | mNumRestExInstance = 0 |
LIST_ENTRY | mEfiRedfishDiscoverNetworkInterface |
LIST_ENTRY | mEfiRedfishDiscoverRestExInstance |
EFI_GUID | mRedfishDiscoverTcp4InstanceGuid = EFI_REDFISH_DISCOVER_TCP4_INSTANCE_GUID |
EFI_GUID | mRedfishDiscoverTcp6InstanceGuid = EFI_REDFISH_DISCOVER_TCP6_INSTANCE_GUID |
EFI_GUID | mRedfishDiscoverRestExInstanceGuid = EFI_REDFISH_DISCOVER_REST_EX_INSTANCE_GUID |
EFI_DRIVER_BINDING_PROTOCOL | gRedfishDiscoverDriverBinding |
The implementation of EFI Redfish Discover Protocol.
(C) Copyright 2021 Hewlett Packard Enterprise Development LP
Copyright (c) 2022, AMD Incorporated. All rights reserved. Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. Copyright (c) 2023, Ampere Computing LLC. All rights reserved.
Copyright (c) 2023, Mike Maslenkin mike..nosp@m.masl.nosp@m.enkin.nosp@m.@gma.nosp@m.il.co.nosp@m.m
SPDX-License-Identifier: BSD-2-Clause-Patent
Definition in file RedfishDiscoverDxe.c.
EFI_STATUS AddAndSignalNewRedfishService | ( | IN EFI_REDFISH_DISCOVERED_INTERNAL_INSTANCE * | Instance, |
IN UINTN *RedfishVersion | OPTIONAL, | ||
IN CHAR8 *RedfishLocation | OPTIONAL, | ||
IN CHAR8 *Uuid | OPTIONAL, | ||
IN CHAR8 *Os | OPTIONAL, | ||
IN CHAR8 *OsVer | OPTIONAL, | ||
IN CHAR8 *Product | OPTIONAL, | ||
IN CHAR8 *ProductVer | OPTIONAL, | ||
IN BOOLEAN | UseHttps | ||
) |
The function adds a new found Redfish service to internal list and notify client.
[in] | Instance | EFI_REDFISH_DISCOVERED_INTERNAL_INSTANCE. |
[in] | RedfishVersion | Redfish version. |
[in] | RedfishLocation | Redfish location. |
[in] | Uuid | Service UUID string. |
[in] | Os | OS string. |
[in] | OsVer | OS version string. |
[in] | Product | Product string. |
[in] | ProductVer | Product version string. |
[in] | UseHttps | Redfish service requires secured connection. |
EFI_SUCCESS | Redfish service is added to list successfully. |
Definition at line 925 of file RedfishDiscoverDxe.c.
EFI_STATUS BuildupNetworkInterface | ( | IN EFI_DRIVER_BINDING_PROTOCOL * | This, |
IN EFI_HANDLE | ControllerHandle | ||
) |
Build up network interface and create corresponding service through the given controller handle.
[in] | This | A pointer to the EFI_DRIVER_BINDING_PROTOCOL instance. |
[in] | ControllerHandle | The handle of the controller to test. This handle must support a protocol interface that supplies an I/O abstraction to the driver. |
EFI_SUCCESS | One of required protocol is found. |
EFI_UNSUPPORTED | None of required protocol is found. |
EFI_UNSUPPORTED | Failed to build up network interface. |
Definition at line 1834 of file RedfishDiscoverDxe.c.
BOOLEAN CheckIsIpVersion6 | ( | IN EFI_REDFISH_DISCOVER_NETWORK_INTERFACE_INTERNAL * | ThisNetworkInterface | ) |
This function checks the IP version supported on this network interface.
[in] | ThisNetworkInterface | EFI_REDFISH_DISCOVER_NETWORK_INTERFACE_INTERNAL |
TRUE | Is IPv6, otherwise IPv4. |
Definition at line 480 of file RedfishDiscoverDxe.c.
EFI_STATUS CloseProtocolService | ( | IN EFI_DRIVER_BINDING_PROTOCOL * | ThisBindingProtocol, |
IN EFI_HANDLE | ControllerHandle, | ||
IN REDFISH_DISCOVER_REQUIRED_PROTOCOL * | ThisRequiredProtocol, | ||
IN EFI_HANDLE | DriverAgentHandle, | ||
IN EFI_HANDLE | DriverControllerHandle | ||
) |
Close the protocol opened for Redfish discovery. This function also destroy the network services.
[in] | ThisBindingProtocol | A pointer to the EFI_DRIVER_BINDING_PROTOCOL instance. |
[in] | ControllerHandle | The handle of the controller to test. This handle must support a protocol interface that supplies an I/O abstraction to the driver. |
[in] | ThisRequiredProtocol | Pointer to the instance of REDFISH_DISCOVER_REQUIRED_PROTOCOL. |
[in] | DriverAgentHandle | Driver agent handle which used to open protocol earlier. |
[in] | DriverControllerHandle | Driver controller handle which used to open protocol earlier. |
EFI_SUCCESS | Protocol is closed successfully. |
Others | Protocol is closed unsuccessfully. |
Definition at line 2025 of file RedfishDiscoverDxe.c.
EFI_STATUS CreateRedfishDiscoverNetworkInterface | ( | IN EFI_HANDLE | ControllerHandle, |
IN UINT32 | NetworkProtocolType, | ||
OUT BOOLEAN * | IsNewInstance, | ||
OUT EFI_REDFISH_DISCOVER_NETWORK_INTERFACE_INTERNAL ** | NetworkInterface | ||
) |
This function create an EFI_REDFISH_DISCOVER_NETWORK_INTERFACE_INTERNAL for the given network interface.
[in] | ControllerHandle | MAC address of this network interface. |
[in] | NetworkProtocolType | Network protocol type. |
[out] | IsNewInstance | BOOLEAN means new instance or not. |
[out] | NetworkInterface | Pointer to to EFI_REDFISH_DISCOVER_NETWORK_INTERFACE_INTERNAL. |
EFI_STATUS |
Definition at line 1682 of file RedfishDiscoverDxe.c.
EFI_STATUS CreateRestExInstance | ( | IN EFI_REDFISH_DISCOVERED_INTERNAL_INSTANCE * | Instance, |
IN EFI_REDFISH_DISCOVERED_TOKEN * | Token | ||
) |
This function creates REST EX instance for the found Resfish service. by known owner handle.
[in] | Instance | EFI_REDFISH_DISCOVERED_INTERNAL_INSTANCE |
[in] | Token | Client token. |
NULL | Instance not found. |
EFI_REDFISH_DISCOVERED_INTERNAL_INSTANCE | The instance owned by this owner. |
Definition at line 83 of file RedfishDiscoverDxe.c.
EFI_STATUS DestroyRedfishNetworkInterface | ( | IN EFI_REDFISH_DISCOVER_NETWORK_INTERFACE_INTERNAL * | ThisNetworkInterface | ) |
This function destroy network interface
[in] | ThisNetworkInterface | EFI_REDFISH_DISCOVER_NETWORK_INTERFACE_INTERNAL instance. |
EFI_STATUS |
Definition at line 1750 of file RedfishDiscoverDxe.c.
EFI_STATUS DiscoverRedfishHostInterface | ( | IN EFI_REDFISH_DISCOVERED_INTERNAL_INSTANCE * | Instance | ) |
This function discover Redfish service through SMBIOS host interface.
[in] | Instance | EFI_REDFISH_DISCOVERED_INTERNAL_INSTANCE |
EFI_SUCCESS | Redfish service is discovered through SMBIOS Host interface. |
Others | Fail to discover Redfish service through SMBIOS host interface |
Definition at line 525 of file RedfishDiscoverDxe.c.
Check if Network Protocol Type matches with SMBIOS Type 42 IP Address Type.
[in] | NetworkProtocolType | The Network Protocol Type to check with. |
[in] | IpType | The Host IP Address Type from SMBIOS Type 42. |
Definition at line 499 of file RedfishDiscoverDxe.c.
STATIC VOID FreeInformationData | ( | IN EFI_REDFISH_DISCOVERED_INFORMATION * | Information | ) |
The function releases particular strings into the structure instance.
[in] | Information | EFI_REDFISH_DISCOVERED_INFORMATION |
Definition at line 723 of file RedfishDiscoverDxe.c.
EFI_REDFISH_DISCOVERED_INTERNAL_INSTANCE * GetInstanceByOwner | ( | IN EFI_HANDLE | ImageHandle, |
IN EFI_REDFISH_DISCOVER_NETWORK_INTERFACE_INTERNAL * | TargetNetworkInterface, | ||
IN EFI_REDFISH_DISCOVER_FLAG | DiscoverFlags | ||
) |
This function gets EFI_REDFISH_DISCOVERED_INTERNAL_INSTANCE by known owner handle.
[in] | ImageHandle | Image handle owns EFI_REDFISH_DISCOVERED_INTERNAL_INSTANCE. |
[in] | TargetNetworkInterface | Target network interface used by this EFI_REDFISH_DISCOVERED_INTERNAL_INSTANCE. |
[in] | DiscoverFlags | EFI_REDFISH_DISCOVER_FLAG |
NULL | Instance not found. |
EFI_REDFISH_DISCOVERED_INTERNAL_INSTANCE | The instance owned by this owner. |
Definition at line 114 of file RedfishDiscoverDxe.c.
EFI_REDFISH_DISCOVER_NETWORK_INTERFACE_INTERNAL * GetTargetNetworkInterfaceInternal | ( | IN EFI_REDFISH_DISCOVER_NETWORK_INTERFACE * | TargetNetworkInterface | ) |
This function searches EFI_REDFISH_DISCOVER_NETWORK_INTERFACE_INTERNAL instance with the given EFI_REDFISH_DISCOVER_NETWORK_INTERFACE.
[in] | TargetNetworkInterface | EFI_REDFISH_DISCOVER_NETWORK_INTERFACE. NULL for all EFI_REDFISH_DISCOVER_NETWORK_INTERFACEs. |
Non-NULL | EFI_REDFISH_DISCOVER_NETWORK_INTERFACE_INTERNAL is returned. |
NULL | Non of EFI_REDFISH_DISCOVER_NETWORK_INTERFACE_INTERNAL instance is returned. |
Definition at line 320 of file RedfishDiscoverDxe.c.
EFI_REDFISH_DISCOVER_NETWORK_INTERFACE_INTERNAL * GetTargetNetworkInterfaceInternalByController | ( | IN EFI_HANDLE | ControllerHandle | ) |
This function searches EFI_REDFISH_DISCOVER_NETWORK_INTERFACE_INTERNAL instance with the given Controller handle.
[in] | ControllerHandle | The controller handle associated with network interface. |
Non-NULL | EFI_REDFISH_DISCOVER_NETWORK_INTERFACE_INTERNAL is returned. |
NULL | Non of EFI_REDFISH_DISCOVER_NETWORK_INTERFACE_INTERNAL instance is returned. |
Definition at line 359 of file RedfishDiscoverDxe.c.
STATIC VOID InitInformationData | ( | IN EFI_REDFISH_DISCOVERED_INFORMATION * | Information, |
IN BOOLEAN | IsIpv6, | ||
IN UINTN *RedfishVersion | OPTIONAL, | ||
IN CONST CHAR8 *RedfishLocation | OPTIONAL, | ||
IN CONST CHAR8 *Uuid | OPTIONAL, | ||
IN CONST CHAR8 *Os | OPTIONAL, | ||
IN CONST CHAR8 *OsVer | OPTIONAL, | ||
IN CONST CHAR8 *Product | OPTIONAL, | ||
IN CONST CHAR8 *ProductVer | OPTIONAL | ||
) |
The function initializes particular strings into the structure instance.
[in] | Information | EFI_REDFISH_DISCOVERED_INFORMATION |
[in] | IsIpv6 | Flag indicating IP version 6 protocol is used |
[in] | RedfishVersion | Redfish version. |
[in] | RedfishLocation | Redfish location. |
[in] | Uuid | Service UUID string. |
[in] | Os | OS string. |
[in] | OsVer | OS version string. |
[in] | Product | Product string. |
[in] | ProductVer | Product version string. |
Definition at line 774 of file RedfishDiscoverDxe.c.
EFI_STATUS NetworkInterfaceGetSubnetInfo | ( | IN EFI_REDFISH_DISCOVER_NETWORK_INTERFACE_INTERNAL * | Instance, |
IN EFI_HANDLE | ImageHandle | ||
) |
This function gets the subnet information of this network interface instance. can discover Redfish service on it.
[in] | Instance | EFI_REDFISH_DISCOVER_NETWORK_INTERFACE_INTERNAL instance. |
[in] | ImageHandle | EFI Image handle request the network interface list. |
EFI_SUCCESS |
Definition at line 1229 of file RedfishDiscoverDxe.c.
UINTN NumberOfNetworkInterface | ( | VOID | ) |
This function returns number of network interface instance.
UINTN | Number of network interface instances. |
Definition at line 445 of file RedfishDiscoverDxe.c.
EFI_STATUS EFIAPI RedfishDiscoverDriverBindingStart | ( | IN EFI_DRIVER_BINDING_PROTOCOL * | This, |
IN EFI_HANDLE | ControllerHandle, | ||
IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath | OPTIONAL | ||
) |
Starts a device controller or a bus controller.
The Start() function is designed to be invoked from the EFI boot service ConnectController(). As a result, much of the error checking on the parameters to Start() has been moved into this common boot service. It is legal to call Start() from other locations, but the following calling restrictions must be followed, or the system behavior will not be deterministic.
[in] | This | A pointer to the EFI_DRIVER_BINDING_PROTOCOL instance. |
[in] | ControllerHandle | The handle of the controller to start. This handle must support a protocol interface that supplies an I/O abstraction to the driver. |
[in] | RemainingDevicePath | A pointer to the remaining portion of a device path. This parameter is ignored by device drivers, and is optional for bus drivers. For a bus driver, if this parameter is NULL, then handles for all the children of Controller are created by this driver. If this parameter is not NULL and the first Device Path Node is not the End of Device Path Node, then only the handle for the child device specified by the first Device Path Node of RemainingDevicePath is created by this driver. If the first Device Path Node of RemainingDevicePath is the End of Device Path Node, no child handle is created by this driver. |
EFI_SUCCESS | The device was started. |
EFI_DEVICE_ERROR | The device could not be started due to a device error.Currently not implemented. |
EFI_OUT_OF_RESOURCES | The request could not be completed due to a lack of resources. |
Others | The driver failed to start the device. |
Definition at line 2280 of file RedfishDiscoverDxe.c.
EFI_STATUS EFIAPI RedfishDiscoverDriverBindingStop | ( | IN EFI_DRIVER_BINDING_PROTOCOL * | This, |
IN EFI_HANDLE | ControllerHandle, | ||
IN UINTN | NumberOfChildren, | ||
IN EFI_HANDLE *ChildHandleBuffer | OPTIONAL | ||
) |
Stops a device controller or a bus controller.
The Stop() function is designed to be invoked from the EFI boot service DisconnectController(). As a result, much of the error checking on the parameters to Stop() has been moved into this common boot service. It is legal to call Stop() from other locations, but the following calling restrictions must be followed, or the system behavior will not be deterministic.
[in] | This | A pointer to the EFI_DRIVER_BINDING_PROTOCOL instance. |
[in] | ControllerHandle | A handle to the device being stopped. The handle must support a bus specific I/O protocol for the driver to use to stop the device. |
[in] | NumberOfChildren | The number of child device handles in ChildHandleBuffer. |
[in] | ChildHandleBuffer | An array of child handles to be freed. May be NULL if NumberOfChildren is 0. |
EFI_SUCCESS | The device was stopped. |
EFI_DEVICE_ERROR | The device could not be stopped due to a device error. |
Definition at line 2318 of file RedfishDiscoverDxe.c.
EFI_STATUS EFIAPI RedfishDiscoverDriverBindingSupported | ( | IN EFI_DRIVER_BINDING_PROTOCOL * | This, |
IN EFI_HANDLE | ControllerHandle, | ||
IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath | OPTIONAL | ||
) |
Tests to see if this driver supports a given controller. If a child device is provided, it further tests to see if this driver supports creating a handle for the specified child device.
This function checks to see if the driver specified by This supports the device specified by ControllerHandle. Drivers will typically use the device path attached to ControllerHandle and/or the services from the bus I/O abstraction attached to ControllerHandle to determine if the driver supports ControllerHandle. This function may be called many times during platform initialization. In order to reduce boot times, the tests performed by this function must be very small, and take as little time as possible to execute. This function must not change the state of any hardware devices, and this function must be aware that the device specified by ControllerHandle may already be managed by the same driver or a different driver. This function must match its calls to AllocatePages() with FreePages(), AllocatePool() with FreePool(), and OpenProtocol() with CloseProtocol(). Because ControllerHandle may have been previously started by the same driver, if a protocol is already in the opened state, then it must not be closed with CloseProtocol(). This is required to guarantee the state of ControllerHandle is not modified by this function.
[in] | This | A pointer to the EFI_DRIVER_BINDING_PROTOCOL instance. |
[in] | ControllerHandle | The handle of the controller to test. This handle must support a protocol interface that supplies an I/O abstraction to the driver. |
[in] | RemainingDevicePath | A pointer to the remaining portion of a device path. This parameter is ignored by device drivers, and is optional for bus drivers. For bus drivers, if this parameter is not NULL, then the bus driver must determine if the bus controller specified by ControllerHandle and the child controller specified by RemainingDevicePath are both supported by this bus driver. |
EFI_SUCCESS | The device specified by ControllerHandle and RemainingDevicePath is supported by the driver specified by This. |
EFI_ALREADY_STARTED | The device specified by ControllerHandle and RemainingDevicePath is already being managed by the driver specified by This. |
EFI_ACCESS_DENIED | The device specified by ControllerHandle and RemainingDevicePath is already being managed by a different driver or an application that requires exclusive access. Currently not implemented. |
EFI_UNSUPPORTED | The device specified by ControllerHandle and RemainingDevicePath is not supported by the driver specified by This. |
Definition at line 2234 of file RedfishDiscoverDxe.c.
EFI_STATUS EFIAPI RedfishDiscoverEntryPoint | ( | IN EFI_HANDLE | ImageHandle, |
IN EFI_SYSTEM_TABLE * | SystemTable | ||
) |
This is the declaration of an EFI image entry point.
ImageHandle | The firmware allocated handle for the UEFI image. |
SystemTable | A pointer to the EFI System Table. |
EFI_SUCCESS | The operation completed successfully. |
Others | An unexpected error occurred. |
Definition at line 2348 of file RedfishDiscoverDxe.c.
EFI_STATUS EFIAPI RedfishDiscoverUnload | ( | IN EFI_HANDLE | ImageHandle | ) |
This is the unload handle for Redfish discover module.
Disconnect the driver specified by ImageHandle from all the devices in the handle database. Uninstall all the protocols installed in the driver entry point.
[in] | ImageHandle | The drivers' driver image. |
EFI_SUCCESS | The image is unloaded. |
Others | Failed to unload the image. |
Definition at line 2388 of file RedfishDiscoverDxe.c.
EFI_STATUS EFIAPI RedfishServiceAbortAcquire | ( | IN EFI_REDFISH_DISCOVER_PROTOCOL * | This, |
IN EFI_REDFISH_DISCOVER_NETWORK_INTERFACE *TargetNetworkInterface | OPTIONAL | ||
) |
This function aborts Redfish service discovery on the given network interface.
[in] | This | EFI_REDFISH_DISCOVER_PROTOCOL instance. |
[in] | TargetNetworkInterface | Target network interface to do the discovery. |
EFI_SUCCESS | REST EX instance of discovered Redfish services are returned. |
Others | Fail to abort Redfish service discovery. |
Definition at line 1593 of file RedfishDiscoverDxe.c.
EFI_STATUS EFIAPI RedfishServiceAcquireService | ( | IN EFI_REDFISH_DISCOVER_PROTOCOL * | This, |
IN EFI_HANDLE | ImageHandle, | ||
IN EFI_REDFISH_DISCOVER_NETWORK_INTERFACE * | TargetNetworkInterface, | ||
IN EFI_REDFISH_DISCOVER_FLAG | Flags, | ||
IN EFI_REDFISH_DISCOVERED_TOKEN * | Token | ||
) |
This function acquires Redfish services by discovering static Redfish setting according to Redfish Host Interface or through SSDP. Returns a list of EFI handles in EFI_REDFISH_DISCOVERED_LIST. Each of EFI handle has corresponding EFI REST EX instance installed on it. Each REST EX instance is a child instance which created through EFI REST EX service protocol for communicating with specific Redfish service.
[in] | This | EFI_REDFISH_DISCOVER_PROTOCOL instance. |
[in] | ImageHandle | EFI image owns these Redfish service instances. |
[in] | TargetNetworkInterface | Target network interface to do the discovery. NULL means discover Redfish service on all network interfaces on platform. |
[in] | Flags | Redfish service discover flags. |
[in] | Token | EFI_REDFISH_DISCOVERED_TOKEN instance. The memory of EFI_REDFISH_DISCOVERED_LIST and the strings in EFI_REDFISH_DISCOVERED_INFORMATION are all allocated by Acquire() and must be freed when caller invoke Release(). |
EFI_SUCCESS | REST EX instance of discovered Redfish services are returned. |
EFI_INVALID_PARAMETERS | ImageHandle == NULL, Flags == 0, Token == NULL, Token->Timeout > 5, or Token->Event == NULL. |
Others | Fail acquire Redfish services. |
Definition at line 1450 of file RedfishDiscoverDxe.c.
EFI_STATUS EFIAPI RedfishServiceGetNetworkInterface | ( | IN EFI_REDFISH_DISCOVER_PROTOCOL * | This, |
IN EFI_HANDLE | ImageHandle, | ||
OUT UINTN * | NumberOfNetworkIntfs, | ||
OUT EFI_REDFISH_DISCOVER_NETWORK_INTERFACE ** | NetworkIntfInstances | ||
) |
This function gets the network interface list which Redfish discover protocol can discover Redfish service on it.
[in] | This | EFI_REDFISH_DISCOVER_PROTOCOL instance. |
[in] | ImageHandle | EFI Image handle request the network interface list, |
[out] | NumberOfNetworkIntfs | Number of network interfaces can do Redfish service discovery. |
[out] | NetworkIntfInstances | Network interface instances. It's an array of instance. The number of entries in array is indicated by NumberOfNetworkIntfs. Caller has to release the memory allocated by Redfish discover protocol. |
EFI_SUCCESS | The information of network interface is returned in NumberOfNetworkIntfs and NetworkIntfInstances. |
Others | Fail to return the information of network interface. |
Definition at line 1340 of file RedfishDiscoverDxe.c.
EFI_STATUS EFIAPI RedfishServiceReleaseService | ( | IN EFI_REDFISH_DISCOVER_PROTOCOL * | This, |
IN EFI_REDFISH_DISCOVERED_LIST * | InstanceList | ||
) |
This function releases Redfish services found by RedfishServiceAcquire().
[in] | This | EFI_REDFISH_DISCOVER_PROTOCOL instance. |
[in] | InstanceList | The Redfish service to release. |
EFI_SUCCESS | REST EX instances of discovered Redfish are released. |
Others | Fail to remove the entry |
Definition at line 1618 of file RedfishDiscoverDxe.c.
EFI_STATUS StopServiceOnNetworkInterface | ( | IN EFI_DRIVER_BINDING_PROTOCOL * | ThisBindingProtocol, |
IN EFI_HANDLE | ControllerHandle | ||
) |
Stop the services on network interface.
[in] | ThisBindingProtocol | A pointer to the EFI_DRIVER_BINDING_PROTOCOL instance. |
[in] | ControllerHandle | The handle of the controller to test. This handle must support a protocol interface that supplies an I/O abstraction to the driver. |
EFI_SUCCESS | One of required protocol is found. |
Others | Failed to stop the services on network interface. |
Definition at line 2064 of file RedfishDiscoverDxe.c.
EFI_STATUS EFIAPI Tcp4GetSubnetInfo | ( | IN EFI_HANDLE | ImageHandle, |
IN EFI_REDFISH_DISCOVER_NETWORK_INTERFACE_INTERNAL * | Instance | ||
) |
This function gets the subnet information of this TCP4 instance.
[in] | ImageHandle | EFI handle with this image. |
[in] | Instance | Instance of Network interface. |
EFI_STATUS | Get subnet information successfully. |
Otherwise | Fail to get subnet information. |
Definition at line 157 of file RedfishDiscoverDxe.c.
EFI_STATUS EFIAPI Tcp6GetSubnetInfo | ( | IN EFI_HANDLE | ImageHandle, |
IN EFI_REDFISH_DISCOVER_NETWORK_INTERFACE_INTERNAL * | Instance | ||
) |
This function gets the subnet information of this TCP6 instance.
[in] | ImageHandle | EFI handle with this image. |
[in] | Instance | Instance of Network interface. |
EFI_STATUS | Get subnet information successfully. |
Otherwise | Fail to get subnet information. |
Definition at line 257 of file RedfishDiscoverDxe.c.
EFI_STATUS TestForRequiredProtocols | ( | IN EFI_DRIVER_BINDING_PROTOCOL * | This, |
IN EFI_HANDLE | ControllerHandle | ||
) |
Tests to see if the required protocols are provided on the given controller handle.
[in] | This | A pointer to the EFI_DRIVER_BINDING_PROTOCOL instance. |
[in] | ControllerHandle | The handle of the controller to test. This handle must support a protocol interface that supplies an I/O abstraction to the driver. |
EFI_SUCCESS | One of required protocol is found. |
EFI_UNSUPPORTED | None of required protocol is found. |
Definition at line 1779 of file RedfishDiscoverDxe.c.
EFI_STATUS ValidateTargetNetworkInterface | ( | IN EFI_REDFISH_DISCOVER_NETWORK_INTERFACE * | TargetNetworkInterface, |
IN EFI_REDFISH_DISCOVER_FLAG | Flags | ||
) |
This function validate if target network interface is ready for discovering Redfish service.
[in] | TargetNetworkInterface | EFI_REDFISH_DISCOVER_NETWORK_INTERFACE. NULL for all EFI_REDFISH_DISCOVER_NETWORK_INTERFACEs. |
[in] | Flags | EFI_REDFISH_DISCOVER_FLAG |
EFI_SUCCESS | Target network interface is ready to use. |
EFI_UNSUPPORTED | Target network interface is not ready to use. |
Definition at line 397 of file RedfishDiscoverDxe.c.
EFI_DRIVER_BINDING_PROTOCOL gRedfishDiscoverDriverBinding |
Definition at line 2328 of file RedfishDiscoverDxe.c.
LIST_ENTRY mEfiRedfishDiscoverNetworkInterface |
Definition at line 23 of file RedfishDiscoverDxe.c.
LIST_ENTRY mEfiRedfishDiscoverRestExInstance |
Definition at line 24 of file RedfishDiscoverDxe.c.
UINTN mNumNetworkInterface = 0 |
Definition at line 21 of file RedfishDiscoverDxe.c.
UINTN mNumRestExInstance = 0 |
Definition at line 22 of file RedfishDiscoverDxe.c.
LIST_ENTRY mRedfishDiscoverList |
Definition at line 17 of file RedfishDiscoverDxe.c.
EFI_GUID mRedfishDiscoverRestExInstanceGuid = EFI_REDFISH_DISCOVER_REST_EX_INSTANCE_GUID |
Definition at line 28 of file RedfishDiscoverDxe.c.
EFI_GUID mRedfishDiscoverTcp4InstanceGuid = EFI_REDFISH_DISCOVER_TCP4_INSTANCE_GUID |
Definition at line 26 of file RedfishDiscoverDxe.c.
EFI_GUID mRedfishDiscoverTcp6InstanceGuid = EFI_REDFISH_DISCOVER_TCP6_INSTANCE_GUID |
Definition at line 27 of file RedfishDiscoverDxe.c.
LIST_ENTRY mRedfishInstanceList |
Definition at line 18 of file RedfishDiscoverDxe.c.
EFI_SMBIOS_PROTOCOL* mSmbios = NULL |
Definition at line 19 of file RedfishDiscoverDxe.c.