This patch series extends GRUB's network boot capabilities to support
the following UEFI network boot functions:

- UEFI PXE with IPv6 support
- UEFI HTTP with IPv4 and IPv6 support
- UEFI HTTP with DNS resolution

Although GRUB already supports TFTP, HTTP, and DNS, it previously lacked
the integration to configure its network stack based on the UEFI device
path or related boot protocols when booting in these network
environments. This series fills that gap by enabling GRUB to
automatically configure the network stack from UEFI device paths or
protocols, so they can work out-of-the-box.

Additionally, for completeness, a new command, net_dhcp6, is introduced
to support IPv6, similar to the existing net_dhcp command for IPv4. This
command auto-configures GRUB's IPv6 interfaces via DHCPv6, enabling
automatic network interface setup and access to remote targets when
booting locally.

The first and last two patches are general fixes to existing network
functionality and can be reviewed or cherry-picked separately from the
patch series.

Thanks,
Michael

Robbie Harwood (2):
  net/http: Check result of grub_netbuff_put() in http_receive()
  efinet: Add structures for PXE messages

Michael Chang (8):
  efinet + bootp: add net_dhcp6 command supporting dhcpv6
  grub.texi: Add net_dhcp6 document
  bootp: Process DHCPACK packet during HTTP Boot
  efinet: Configure network from UEFI device path
  efinet: Set DNS server from UEFI protocol
  kern/efi/efi: Print URI and DNS device path info
  kern/efi/efi: Correct endianness in IPv6 device path
  bootp: Fix logical operator in DHCP option overload check

 docs/grub.texi                     |  30 +
 grub-core/kern/efi/efi.c           |  69 ++-
 grub-core/net/bootp.c              | 945 ++++++++++++++++++++++++++++-
 grub-core/net/drivers/efi/efinet.c | 487 ++++++++++++++-
 grub-core/net/http.c               |   4 +-
 grub-core/net/ip.c                 |  39 ++
 grub-core/net/net.c                |  72 +++
 include/grub/efi/api.h             | 242 +++++++-
 include/grub/net.h                 |  80 +++
 9 files changed, 1930 insertions(+), 38 deletions(-)

-- 
2.47.1


_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/grub-devel

Reply via email to