Udp6Dxe
| Index |
Module |
Size |
Phase |
| 0153 |
Udp6Dxe |
40,192 bytes (39.2 KB) |
DXE |
Overview
UDPv6 Network Stack DXE Driver from AmiNetworkPkg/UefiNetworkStack/Ipv6/Udp6Dxe/. Implements EFI_UDP6_SERVICE_BINDING_PROTOCOL and EFI_UDP6_PROTOCOL to provide UDP datagram services over IPv6. Handles datagram transmission/reception, multicast group management, port-based filtering, promiscuous mode, and ICMPv6 error reporting. Sits on top of the Ip6Dxe driver and uses the IpIo (IP I/O) library for IP-layer integration.
Key Functions
- Udp6DriverEntryPoint: UEFI driver entry point; installs driver binding and component name protocols, initializes random port base.
- Udp6DriverBindingSupported/Start/Stop: Standard UEFI driver binding for UDP6 service management.
- Udp6ServiceBindingCreateChild/DestroyChild: Create and destroy UDP6 child instances with per-instance protocol interfaces.
- Udp6Configure (0x253C): Configure UDP6 instance with station address, remote address, port filters, and timeouts.
- Udp6Transmit (0x29A4): Build UDP header, compute checksum, send via IpIo/Ip6.
- Udp6Receive (0x2CAC): Register receive token for asynchronous datagram delivery.
- Udp6Groups (0x290C): Join/leave IPv6 multicast groups.
- Udp6DgramRcvd: Datagram receive callback; matches packets to instances by port/address, delivers via token.
Dependencies
- Ip6Dxe: EFI_IP6_PROTOCOL and EFI_IP6_SERVICE_BINDING_PROTOCOL (via IpIo library)
- DxeNetLib: NET_BUF, NetMap, linked list, and checksum utilities
- DxeUdpIoLib: IpIo library for IP-layer abstraction
- Consumed by: Dhcp6Dxe, HttpBootDxe, DnsDxe, TcpDxe
Intel Purley (HR650X server platform), x86-64, PE32+ format, 6 sections (.text, .rdata, .data, section_3, .xdata, .reloc)