15#ifndef __EFI_DNS4_PROTOCOL_H__
16#define __EFI_DNS4_PROTOCOL_H__
21#define EFI_DNS4_SERVICE_BINDING_PROTOCOL_GUID \
23 0xb625b186, 0xe063, 0x44f7, {0x89, 0x5, 0x6a, 0x74, 0xdc, 0x6f, 0x52, 0xb4 } \
26#define EFI_DNS4_PROTOCOL_GUID \
28 0xae3d28cc, 0xe05b, 0x4fa1, {0xa0, 0x11, 0x7e, 0xb5, 0x5a, 0x3f, 0x14, 0x1 } \
unsigned short UINT16
2-byte unsigned value.
unsigned char BOOLEAN
Logical Boolean.
char CHAR8
1-byte Character
UINT64 UINTN
Unsigned value of native width.
unsigned short CHAR16
2-byte Character.
unsigned char UINT8
1-byte unsigned value.
unsigned int UINT32
4-byte unsigned value.
EFI_STATUS(EFIAPI * EFI_DNS4_UPDATE_DNS_CACHE)(IN EFI_DNS4_PROTOCOL *This, IN BOOLEAN DeleteFlag, IN BOOLEAN Override, IN EFI_DNS4_CACHE_ENTRY DnsCacheEntry)
This function is to update the DNS Cache.
EFI_STATUS(EFIAPI * EFI_DNS4_POLL)(IN EFI_DNS4_PROTOCOL *This)
Polls for incoming data packets and processes outgoing data packets.
EFI_STATUS(EFIAPI * EFI_DNS4_CONFIGURE)(IN EFI_DNS4_PROTOCOL *This, IN EFI_DNS4_CONFIG_DATA *DnsConfigData)
Configure this DNS instance.
EFI_STATUS(EFIAPI * EFI_DNS4_GENERAL_LOOKUP)(IN EFI_DNS4_PROTOCOL *This, IN CHAR8 *QName, IN UINT16 QType, IN UINT16 QClass, IN EFI_DNS4_COMPLETION_TOKEN *Token)
Retrieve arbitrary information from the DNS server.
EFI_GUID gEfiDns4ServiceBindingProtocolGuid
EFI_STATUS(EFIAPI * EFI_DNS4_CANCEL)(IN EFI_DNS4_PROTOCOL *This, IN EFI_DNS4_COMPLETION_TOKEN *Token)
Abort an asynchronous DNS operation, including translation between IP and Host, and general look up b...
EFI_STATUS(EFIAPI * EFI_DNS4_HOST_NAME_TO_IP)(IN EFI_DNS4_PROTOCOL *This, IN CHAR16 *HostName, IN EFI_DNS4_COMPLETION_TOKEN *Token)
Host name to host address translation.
EFI_STATUS(EFIAPI * EFI_DNS4_GET_MODE_DATA)(IN EFI_DNS4_PROTOCOL *This, OUT EFI_DNS4_MODE_DATA *DnsModeData)
Retrieve mode data of this DNS instance.
EFI_GUID gEfiDns4ProtocolGuid
EFI_STATUS(EFIAPI * EFI_DNS4_IP_TO_HOST_NAME)(IN EFI_DNS4_PROTOCOL *This, IN EFI_IPv4_ADDRESS IpAddress, IN EFI_DNS4_COMPLETION_TOKEN *Token)
IPv4 address to host name translation also known as Reverse DNS lookup.
struct _EFI_DNS4_PROTOCOL EFI_DNS4_PROTOCOL
RETURN_STATUS EFI_STATUS
Function return status for EFI API.
GUID EFI_GUID
128-bit buffer containing a unique identifier value.
IPv4_ADDRESS EFI_IPv4_ADDRESS
4-byte buffer.
#define FILE_LICENCE(_licence)
Declare a particular licence as applying to a file.
#define FILE_SECBOOT(_status)
Declare a file's UEFI Secure Boot permission status.
CHAR16 * HostName
Pointer to the primary name for this host address.
DNS_RESOURCE_RECORD * RRList
Pointer to the all the returned matching RRs.
UINTN RRCount
Number of returned matching RRs.
EFI_IPv4_ADDRESS * IpList
Pointer to the all the returned IP addresses.
UINT32 IpCount
Number of the returned IP addresses.
UINT32 TTL
32 bit integer which specify the time interval that the resource record may be cached before the sour...
UINT16 QClass
The CLASS code of this RR.
UINT16 QType
The Type Code of this RR.
CHAR8 * QName
The Owner name.
CHAR8 * RData
A string of octets that describe the resource, the format of this information varies according to QTy...
UINT16 DataLength
16 big integer which specify the length of RData.
UINT32 Timeout
Time in second unit that this entry will remain in DNS cache.
CHAR16 * HostName
Host name.
EFI_IPv4_ADDRESS * IpAddress
IP address of this host.
EFI_DNS4_COMPLETION_TOKEN.
EFI_EVENT Event
This Event will be signaled after the Status field is updated by the EFI DNS protocol driver.
UINT32 RetryInterval
Minimum interval of retry is 2 second.
DNS_HOST_TO_ADDR_DATA * H2AData
When the Token is used for host name to address translation, H2AData is a pointer to the DNS_HOST_TO_...
DNS_ADDR_TO_HOST_DATA * A2HData
When the Token is used for host address to host name translation, A2HData is a pointer to the DNS_ADD...
EFI_STATUS Status
Will be set to one of the following values: EFI_SUCCESS: The host name to address translation complet...
UINT32 RetryCount
Retry number if no response received after RetryInterval.
DNS_GENERAL_LOOKUP_DATA * GLookupData
When the Token is used for a general lookup function, GLookupDATA is a pointer to the DNS_GENERAL_LOO...
BOOLEAN EnableDnsCache
If TRUE, enable DNS cache function for this DNS instance.
UINT16 LocalPort
Local port number.
UINT8 Protocol
Use the protocol number defined in "Links to UEFI-RelatedDocuments"(http://uefi.org/uefi) under the h...
EFI_IPv4_ADDRESS * DnsServerList
Pointer to DNS server list containing DnsServerListCount entries or NULL if DnsServerListCountis 0.
BOOLEAN UseDefaultSetting
Set to TRUE to use the default IP address/subnet mask and default routing table.
EFI_IPv4_ADDRESS SubnetMask
If UseDefaultSetting is FALSE indicates the subnet mask to use.
UINTN DnsServerListCount
Count of the DNS servers.
EFI_IPv4_ADDRESS StationIp
If UseDefaultSetting is FALSE indicates the station address to use.
UINT32 RetryInterval
Minimum interval of retry is 2 second.
UINT32 RetryCount
Retry number if no response received after RetryInterval.
EFI_IPv4_ADDRESS * DnsServerList
Pointer to common list of addresses of all configured DNS server used by EFI_DNS4_PROTOCOL instances.
EFI_DNS4_CACHE_ENTRY * DnsCacheList
Pointer to a buffer containing DnsCacheCount DNS Cache entry structures.
UINT32 DnsCacheCount
Number of DNS Cache entries.
UINT32 DnsServerCount
Number of configured DNS server.
EFI_DNS4_CONFIG_DATA DnsConfigData
The configuration data of this instance.
The EFI_DNS4_Protocol provides the function to get the host name and address mapping,...
EFI_DNS4_HOST_NAME_TO_IP HostNameToIp
EFI_DNS4_CONFIGURE Configure
EFI_DNS4_IP_TO_HOST_NAME IpToHostName
EFI_DNS4_GENERAL_LOOKUP GeneralLookUp
EFI_DNS4_UPDATE_DNS_CACHE UpdateDnsCache
EFI_DNS4_GET_MODE_DATA GetModeData