37extern UINT16 mUdp4RandomPort;
39#define ICMP_ERROR_PACKET_LENGTH 8
41#define UDP4_TIMEOUT_INTERVAL (50 * TICKS_PER_MS)
43#define UDP4_HEADER_SIZE sizeof (EFI_UDP_HEADER)
44#define UDP4_MAX_DATA_SIZE 65507
46#define UDP4_PORT_KNOWN 1024
48#define UDP4_SERVICE_DATA_SIGNATURE SIGNATURE_32('U', 'd', 'p', '4')
50#define UDP4_SERVICE_DATA_FROM_THIS(a) \
55 UDP4_SERVICE_DATA_SIGNATURE \
70#define UDP4_INSTANCE_DATA_SIGNATURE SIGNATURE_32('U', 'd', 'p', 'I')
72#define UDP4_INSTANCE_DATA_FROM_THIS(a) \
77 UDP4_INSTANCE_DATA_SIGNATURE \
117 UINTN NumberOfChildren;
270 IN BOOLEAN DeleteRoute,
622 IN VOID *Arg OPTIONAL
EFI_STATUS Udp4ValidateTxToken(IN UDP4_INSTANCE_DATA *Instance, IN EFI_UDP4_COMPLETION_TOKEN *TxToken)
EFI_STATUS Udp4CreateService(IN OUT UDP4_SERVICE_DATA *Udp4Service, IN EFI_HANDLE ImageHandle, IN EFI_HANDLE ControllerHandle)
EFI_STATUS EFIAPI Udp4Configure(IN EFI_UDP4_PROTOCOL *This, IN EFI_UDP4_CONFIG_DATA *UdpConfigData OPTIONAL)
EFI_STATUS Udp4RemoveToken(IN OUT NET_MAP *TokenMap, IN EFI_UDP4_COMPLETION_TOKEN *Token)
EFI_STATUS EFIAPI Udp4GetModeData(IN EFI_UDP4_PROTOCOL *This, OUT EFI_UDP4_CONFIG_DATA *Udp4ConfigData OPTIONAL, OUT EFI_IP4_MODE_DATA *Ip4ModeData OPTIONAL, OUT EFI_MANAGED_NETWORK_CONFIG_DATA *MnpConfigData OPTIONAL, OUT EFI_SIMPLE_NETWORK_MODE *SnpModeData OPTIONAL)
EFI_STATUS EFIAPI Udp4LeaveGroup(IN OUT NET_MAP *Map, IN NET_MAP_ITEM *Item, IN VOID *Arg OPTIONAL)
EFI_STATUS EFIAPI Udp4Routes(IN EFI_UDP4_PROTOCOL *This, IN BOOLEAN DeleteRoute, IN EFI_IPv4_ADDRESS *SubnetAddress, IN EFI_IPv4_ADDRESS *SubnetMask, IN EFI_IPv4_ADDRESS *GatewayAddress)
EFI_STATUS EFIAPI Udp4Groups(IN EFI_UDP4_PROTOCOL *This, IN BOOLEAN JoinFlag, IN EFI_IPv4_ADDRESS *MulticastAddress OPTIONAL)
BOOLEAN Udp4IsReconfigurable(IN EFI_UDP4_CONFIG_DATA *OldConfigData, IN EFI_UDP4_CONFIG_DATA *NewConfigData)
VOID Udp4InstanceDeliverDgram(IN UDP4_INSTANCE_DATA *Instance)
EFI_STATUS EFIAPI Udp4Transmit(IN EFI_UDP4_PROTOCOL *This, IN EFI_UDP4_COMPLETION_TOKEN *Token)
EFI_STATUS EFIAPI Udp4Poll(IN EFI_UDP4_PROTOCOL *This)
EFI_STATUS Udp4Bind(IN LIST_ENTRY *InstanceList, IN OUT EFI_UDP4_CONFIG_DATA *ConfigData)
VOID Udp4InitInstance(IN UDP4_SERVICE_DATA *Udp4Service, IN OUT UDP4_INSTANCE_DATA *Instance)
VOID EFIAPI Udp4NetVectorExtFree(VOID *Context)
VOID Udp4BuildIp4ConfigData(IN EFI_UDP4_CONFIG_DATA *Udp4ConfigData, IN OUT EFI_IP4_CONFIG_DATA *Ip4ConfigData)
EFI_STATUS Udp4InstanceCancelToken(IN UDP4_INSTANCE_DATA *Instance, IN EFI_UDP4_COMPLETION_TOKEN *Token OPTIONAL)
UINT16 Udp4Checksum(IN NET_BUF *Packet, IN UINT16 HeadSum)
EFI_STATUS EFIAPI Udp4TokenExist(IN NET_MAP *Map, IN NET_MAP_ITEM *Item, IN VOID *Context)
EFI_STATUS EFIAPI Udp4Cancel(IN EFI_UDP4_PROTOCOL *This, IN EFI_UDP4_COMPLETION_TOKEN *Token OPTIONAL)
VOID Udp4ReportIcmpError(IN UDP4_INSTANCE_DATA *Instance)
VOID Udp4FlushRcvdDgram(IN UDP4_INSTANCE_DATA *Instance)
EFI_STATUS EFIAPI Udp4Receive(IN EFI_UDP4_PROTOCOL *This, IN EFI_UDP4_COMPLETION_TOKEN *Token)
VOID Udp4CleanService(IN UDP4_SERVICE_DATA *Udp4Service)
VOID Udp4CleanInstance(IN UDP4_INSTANCE_DATA *Instance)