27#ifndef __EFI_IP6_PROTOCOL_H__
28#define __EFI_IP6_PROTOCOL_H__
33#define EFI_IP6_SERVICE_BINDING_PROTOCOL_GUID \
35 0xec835dd3, 0xfe0f, 0x617b, {0xa6, 0x21, 0xb3, 0x50, 0xc3, 0xe1, 0x33, 0x88 } \
38#define EFI_IP6_PROTOCOL_GUID \
40 0x2c8759d5, 0x5c2d, 0x66ef, {0x92, 0x5f, 0xb6, 0x6c, 0x10, 0x19, 0x57, 0xe2 } \
87#define ICMP_V6_DEST_UNREACHABLE 0x1
88#define ICMP_V6_PACKET_TOO_BIG 0x2
89#define ICMP_V6_TIME_EXCEEDED 0x3
90#define ICMP_V6_PARAMETER_PROBLEM 0x4
97#define ICMP_V6_ECHO_REQUEST 0x80
98#define ICMP_V6_ECHO_REPLY 0x81
99#define ICMP_V6_LISTENER_QUERY 0x82
100#define ICMP_V6_LISTENER_REPORT 0x83
101#define ICMP_V6_LISTENER_DONE 0x84
102#define ICMP_V6_ROUTER_SOLICIT 0x85
103#define ICMP_V6_ROUTER_ADVERTISE 0x86
104#define ICMP_V6_NEIGHBOR_SOLICIT 0x87
105#define ICMP_V6_NEIGHBOR_ADVERTISE 0x88
106#define ICMP_V6_REDIRECT 0x89
107#define ICMP_V6_LISTENER_REPORT_2 0x8F
114#define ICMP_V6_NO_ROUTE_TO_DEST 0x0
115#define ICMP_V6_COMM_PROHIBITED 0x1
116#define ICMP_V6_BEYOND_SCOPE 0x2
117#define ICMP_V6_ADDR_UNREACHABLE 0x3
118#define ICMP_V6_PORT_UNREACHABLE 0x4
119#define ICMP_V6_SOURCE_ADDR_FAILED 0x5
120#define ICMP_V6_ROUTE_REJECTED 0x6
127#define ICMP_V6_TIMEOUT_HOP_LIMIT 0x0
128#define ICMP_V6_TIMEOUT_REASSEMBLE 0x1
135#define ICMP_V6_ERRONEOUS_HEADER 0x0
136#define ICMP_V6_UNRECOGNIZE_NEXT_HDR 0x1
137#define ICMP_V6_UNRECOGNIZE_OPTION 0x2
#define EFIAPI
Definition ProcessorBind.h:172
unsigned int UINT32
Definition ProcessorBind.h:102
#define IN
Definition Base.h:347
#define OUT
Definition Base.h:352
#define OPTIONAL
Definition Base.h:358
struct _EFI_IP6_TRANSMIT_DATA EFI_IP6_TRANSMIT_DATA
EFI_GUID gEfiIp6ProtocolGuid
struct _EFI_IP6_FRAGMENT_DATA EFI_IP6_FRAGMENT_DATA
EFI_STATUS(EFIAPI * EFI_IP6_CANCEL)(IN EFI_IP6_PROTOCOL *This, IN EFI_IP6_COMPLETION_TOKEN *Token OPTIONAL)
Definition Ip6.h:898
EFI_STATUS(EFIAPI * EFI_IP6_GROUPS)(IN EFI_IP6_PROTOCOL *This, IN BOOLEAN JoinFlag, IN EFI_IPv6_ADDRESS *GroupAddress OPTIONAL)
Definition Ip6.h:667
struct _EFI_IP6_OVERRIDE_DATA EFI_IP6_OVERRIDE_DATA
EFI_STATUS(EFIAPI * EFI_IP6_ROUTES)(IN EFI_IP6_PROTOCOL *This, IN BOOLEAN DeleteRoute, IN EFI_IPv6_ADDRESS *Destination OPTIONAL, IN UINT8 PrefixLength, IN EFI_IPv6_ADDRESS *GatewayAddress OPTIONAL)
Definition Ip6.h:716
EFI_STATUS(EFIAPI * EFI_IP6_GET_MODE_DATA)(IN EFI_IP6_PROTOCOL *This, OUT EFI_IP6_MODE_DATA *Ip6ModeData OPTIONAL, OUT EFI_MANAGED_NETWORK_CONFIG_DATA *MnpConfigData OPTIONAL, OUT EFI_SIMPLE_NETWORK_MODE *SnpModeData OPTIONAL)
Definition Ip6.h:575
EFI_IP6_NEIGHBOR_STATE
Definition Ip6.h:256
@ EfiNeighborDelay
Definition Ip6.h:279
@ EfiNeighborInComplete
Definition Ip6.h:263
@ EfiNeighborProbe
Definition Ip6.h:285
@ EfiNeighborReachable
Definition Ip6.h:268
@ EfiNeighborStale
Definition Ip6.h:274
EFI_STATUS(EFIAPI * EFI_IP6_POLL)(IN EFI_IP6_PROTOCOL *This)
Definition Ip6.h:930
EFI_STATUS(EFIAPI * EFI_IP6_CONFIGURE)(IN EFI_IP6_PROTOCOL *This, IN EFI_IP6_CONFIG_DATA *Ip6ConfigData OPTIONAL)
Definition Ip6.h:630
EFI_STATUS(EFIAPI * EFI_IP6_TRANSMIT)(IN EFI_IP6_PROTOCOL *This, IN EFI_IP6_COMPLETION_TOKEN *Token)
Definition Ip6.h:825
struct _EFI_IP6_HEADER EFI_IP6_HEADER
struct _EFI_IP6_RECEIVE_DATA EFI_IP6_RECEIVE_DATA
EFI_STATUS(EFIAPI * EFI_IP6_RECEIVE)(IN EFI_IP6_PROTOCOL *This, IN EFI_IP6_COMPLETION_TOKEN *Token)
Definition Ip6.h:863
EFI_GUID gEfiIp6ServiceBindingProtocolGuid
EFI_STATUS(EFIAPI * EFI_IP6_NEIGHBORS)(IN EFI_IP6_PROTOCOL *This, IN BOOLEAN DeleteFlag, IN EFI_IPv6_ADDRESS *TargetIp6Address, IN EFI_MAC_ADDRESS *TargetLinkAddress, IN UINT32 Timeout, IN BOOLEAN Override)
Definition Ip6.h:772
RETURN_STATUS EFI_STATUS
Definition UefiBaseType.h:33
VOID * EFI_EVENT
Definition UefiBaseType.h:41
VOID * EFI_HANDLE
Definition UefiBaseType.h:37
#define VOID
Definition acefi.h:190
unsigned short UINT16
Definition actypes.h:237
unsigned char BOOLEAN
Definition actypes.h:235
unsigned char UINT8
Definition actypes.h:236
UINT8 PrefixLength
The length of the prefix associated with the Address.
Definition Ip6.h:229
EFI_IPv6_ADDRESS Address
The IPv6 address.
Definition Ip6.h:228
UINT8 PrefixLength
Definition Ip6.h:61
EFI_HANDLE InstanceHandle
Definition Ip6.h:53
EFI_IPv6_ADDRESS Ip6Address
Definition Ip6.h:57
EFI_STATUS Status
Definition Ip6.h:543
EFI_EVENT Event
Definition Ip6.h:529
EFI_IP6_RECEIVE_DATA * RxData
Definition Ip6.h:548
EFI_IP6_TRANSMIT_DATA * TxData
Definition Ip6.h:552
BOOLEAN AcceptIcmpErrors
Definition Ip6.h:164
UINT8 TrafficClass
Definition Ip6.h:200
UINT32 FlowLabel
Definition Ip6.h:209
UINT32 ReceiveTimeout
Definition Ip6.h:215
UINT8 DefaultProtocol
Definition Ip6.h:151
UINT8 HopLimit
Definition Ip6.h:204
BOOLEAN AcceptAnyProtocol
Definition Ip6.h:159
EFI_IPv6_ADDRESS DestinationAddress
Definition Ip6.h:175
EFI_IPv6_ADDRESS StationAddress
Definition Ip6.h:195
UINT32 TransmitTimeout
Definition Ip6.h:221
BOOLEAN AcceptPromiscuous
Definition Ip6.h:170
UINT8 Type
The type of ICMP message.
Definition Ip6.h:305
UINT8 Code
The code of the ICMP message.
Definition Ip6.h:306
UINT32 MaxPacketSize
Definition Ip6.h:322
EFI_IP6_NEIGHBOR_CACHE * NeighborCache
Definition Ip6.h:373
UINT32 IcmpTypeCount
Definition Ip6.h:387
EFI_IP6_ICMP_TYPE * IcmpTypeList
Definition Ip6.h:393
UINT32 RouteCount
Definition Ip6.h:359
EFI_IP6_ADDRESS_INFO * AddressList
Definition Ip6.h:343
EFI_IP6_ROUTE_TABLE * RouteTable
Definition Ip6.h:363
UINT32 NeighborCount
Definition Ip6.h:368
UINT32 PrefixCount
Definition Ip6.h:378
BOOLEAN IsStarted
Definition Ip6.h:318
EFI_IPv6_ADDRESS * GroupTable
Definition Ip6.h:354
EFI_IP6_CONFIG_DATA ConfigData
Definition Ip6.h:326
EFI_IP6_ADDRESS_INFO * PrefixTable
Definition Ip6.h:383
UINT32 GroupCount
Definition Ip6.h:348
UINT32 AddressCount
Definition Ip6.h:337
BOOLEAN IsConfigured
Definition Ip6.h:333
EFI_IP6_NEIGHBOR_STATE State
State of this neighbor cache entry.
Definition Ip6.h:296
EFI_MAC_ADDRESS LinkAddress
Link-layer address of the neighbor.
Definition Ip6.h:295
EFI_IPv6_ADDRESS Neighbor
The on-link unicast/anycast IP address of the neighbor.
Definition Ip6.h:294
UINT8 PrefixLength
Definition Ip6.h:250
EFI_IPv6_ADDRESS Gateway
Definition Ip6.h:242
EFI_IPv6_ADDRESS Destination
Definition Ip6.h:246
EFI_HANDLE DriverHandle
Definition Ip6.h:72
UINT32 AddressCount
Definition Ip6.h:76
Definition UefiBaseType.h:100
Definition ManagedNetwork.h:36
Definition SimpleNetwork.h:169
Definition UefiBaseType.h:72
VOID * FragmentBuffer
Pointer to fragment data. This field may not be set to NULL.
Definition Ip6.h:423
UINT32 FragmentLength
Length of fragment data. This field may not be set to zero.
Definition Ip6.h:422
UINT8 HopLimit
Hop-Limit override.
Definition Ip6.h:473
UINT32 FlowLabel
Flow-Label override.
Definition Ip6.h:474
UINT8 Protocol
Protocol type override.
Definition Ip6.h:472
EFI_IP6_TRANSMIT Transmit
Definition Ip6.h:944
EFI_IP6_NEIGHBORS Neighbors
Definition Ip6.h:943
EFI_IP6_ROUTES Routes
Definition Ip6.h:942
EFI_IP6_GET_MODE_DATA GetModeData
Definition Ip6.h:939
EFI_IP6_GROUPS Groups
Definition Ip6.h:941
EFI_IP6_RECEIVE Receive
Definition Ip6.h:945
EFI_IP6_CONFIGURE Configure
Definition Ip6.h:940
EFI_IP6_POLL Poll
Definition Ip6.h:947
EFI_IP6_CANCEL Cancel
Definition Ip6.h:946
EFI_TIME TimeStamp
Definition Ip6.h:434
UINT32 HeaderLength
Definition Ip6.h:444
UINT32 FragmentCount
Definition Ip6.h:459
EFI_IP6_HEADER * Header
Definition Ip6.h:450
UINT32 DataLength
Definition Ip6.h:455
EFI_EVENT RecycleSignal
Definition Ip6.h:439
EFI_IP6_FRAGMENT_DATA FragmentTable[1]
Definition Ip6.h:463
UINT32 DataLength
Definition Ip6.h:509
UINT32 ExtHdrsLength
Definition Ip6.h:494
UINT8 NextHeader
Definition Ip6.h:505
EFI_IP6_FRAGMENT_DATA FragmentTable[1]
Definition Ip6.h:517
EFI_IP6_OVERRIDE_DATA * OverrideData
Definition Ip6.h:489
UINT32 FragmentCount
Definition Ip6.h:513
VOID * ExtHdrs
Definition Ip6.h:500
EFI_IPv6_ADDRESS DestinationAddress
Definition Ip6.h:485