Newer
Older
AMI-Aptio-BIOS-Reversed / Ip6Dxe / README.md
@Ajax Dong Ajax Dong 2 days ago 1 KB Init

Ip6Dxe

Index Module Size Phase
0152 Ip6Dxe 121,568 bytes (118.7 KB) DXE

Overview

IPv6 Network Stack DXE Driver from AmiNetworkPkg/UefiNetworkStack/Ipv6/Ip6Dxe/. Implements EFI_IP6_SERVICE_BINDING_PROTOCOL, EFI_IP6_PROTOCOL, and EFI_IP6_CONFIG_PROTOCOL to provide full IPv6 networking for the UEFI network stack. Supports Neighbor Discovery (RFC 4861), MLDv1/v2 (RFC 3810), packet fragmentation and reassembly, and HII-based configuration forms. Composed of 315 functions across 8 source files with approximately 92 KB of .text code.

Key Functions

  • ModuleEntryPoint (0x548): UEFI driver entry point; initializes globals, locates HII and DPC protocols, checks NetworkStackVar to verify IPv6 is enabled.
  • DriverBinding Supported/Start/Stop (0x94C/0x1160/0x13F0): Standard UEFI driver binding protocol implementation.
  • Ip6Configure (0x3950): IP6 protocol configuration including address, route, and neighbor settings.
  • Ip6Output (0x1FB8): Packet output with route lookup, fragmentation, and source address selection.
  • Ip6Transmit/Ip6Receive (0x3F4C/0x439C): Core packet transmit and receive path.
  • Ip6ConfigSetData/Ip6ConfigGetData (0x7988/0x8770): HII configuration data management.
  • Timer tick handler (0xAB40): 500ms periodic timer for ND retransmission, neighbor reachability probing, and DAD.

Dependencies

  • MnpDxe: EFI_MANAGED_NETWORK_PROTOCOL and service binding
  • HII protocols: gEfiHiiDatabase, gEfiHiiString, gEfiHiiConfigRouting
  • DxeNetLib: NET_BUF management and IP helper utilities
  • DPC Lib: Deferred procedure calls for receive path processing
  • Consumed by: Udp6Dxe, Dhcp6Dxe, HttpBootDxe, DnsDxe, TcpDxe

Platform

Intel Purley (HR650X server platform), x86-64, PE32+ format, 6 sections (.text, .rdata, .data, section_3, .xdata, .reloc)