[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v5 00/20] UEFI networking support including ipv6 + dhcpv6
From: |
Robbie Harwood |
Subject: |
[PATCH v5 00/20] UEFI networking support including ipv6 + dhcpv6 |
Date: |
Tue, 25 Apr 2023 11:05:11 -0400 |
This series is an omnibus of changes we carry for networking that has
accumulated since at least 2015. While most of it did not receive review when
previously posted, one did, so I'm using that as an excuse to call this v4.
At the start, this includes a proposed revert of
ac8a37dda0eabdd80506bebe4fb9a5a9fd227935 ("net/http: Allow use of non-standard
TCP/IP ports"). In 2016, a different approach to this more in keeping with
the way port numbers are typically specified was posted on-list:
https://lists.gnu.org/archive/html/grub-devel/2016-04/msg00071.html [1]
At least Debian, Red Hat, SUSE, and Ubuntu have carried it since then, which
means that code in the wild expects this syntax, not the other syntax.
(Others may have as well - I didn't do an exhaustive check - but hopefully
that's enough to convey the point.)
At this point, the division of code between patches is mostly organic. I've
folded bugfixes into their original commits and moved a few other things
around, so while this doesn't exactly match the division in the rhboot tree,
it does match the code. At this version, the only code differences are style
adjustments and rebasing around the vlan changes that merged since 2.06.
Changes since last version are to address review from dkiper. Notably, docs
have been added to the bracketed ipv6 commit, and a new commit has been added
for the grub_netbuff_put() error check.
Be well,
--Robbie
Ian Page Hands (1):
efinet: Add DHCP proxy support
Javier Martinez Canillas (3):
efi/http: Enclose literal IPv6 addresses in square brackets
http: Prepend prefix when the HTTP path is relative
normal/main: Discover the device to read the config from as a fallback
Mark Salter (1):
use fw_path prefix when fallback searching for grub config
Michael Chang (6):
efinet: add structures for PXE messages
grub.texi: Add net_bootp6 doumentation
bootp: Process DHCPACK packet during HTTP Boot
efinet Configure network from UEFI device path
efinet: set DNS server from UEFI protocol
Support UEFI networking protocols
Paulo Flabiano Smorigo (1):
Add fw_path variable to detect config file on efi
Peter Jones (4):
efinet + bootp: add net_bootp6 command supporting dhcpv6
efinet: also use the firmware acceleration for http
efi/http: match protocol+hostname of boot url in root_url
Try mac/guid/etc before grub.cfg on tftp config files
Robbie Harwood (3):
Revert "net/http: Allow use of non-standard TCP/IP ports"
net: read bracketed ipv6 addrs and port numbers
net/http: check result of grub_netbuff_put() in http_receive()
Stephen Benjamin (1):
Prepend prefix when HTTP path is relative
docs/grub.texi | 54 +-
grub-core/Makefile.core.def | 12 +
grub-core/io/bufio.c | 2 +-
grub-core/kern/efi/efi.c | 96 +-
grub-core/kern/ieee1275/init.c | 28 +-
grub-core/kern/main.c | 22 +-
grub-core/net/bootp.c | 965 ++++++++++++++++++-
grub-core/net/drivers/efi/efinet.c | 521 +++++++++-
grub-core/net/efi/dhcp.c | 357 +++++++
grub-core/net/efi/efi_netfs.c | 57 ++
grub-core/net/efi/http.c | 490 ++++++++++
grub-core/net/efi/ip4_config.c | 417 ++++++++
grub-core/net/efi/ip6_config.c | 423 +++++++++
grub-core/net/efi/net.c | 1416 ++++++++++++++++++++++++++++
grub-core/net/efi/pxe.c | 354 +++++++
grub-core/net/http.c | 73 +-
grub-core/net/ip.c | 39 +
grub-core/net/net.c | 225 ++++-
grub-core/net/tftp.c | 9 +-
grub-core/normal/main.c | 149 ++-
include/grub/efi/api.h | 398 +++++++-
include/grub/efi/dhcp.h | 347 +++++++
include/grub/efi/http.h | 215 +++++
include/grub/net.h | 81 ++
include/grub/net/efi.h | 144 +++
util/grub-mknetdir.c | 23 +-
26 files changed, 6731 insertions(+), 186 deletions(-)
create mode 100644 grub-core/net/efi/dhcp.c
create mode 100644 grub-core/net/efi/efi_netfs.c
create mode 100644 grub-core/net/efi/http.c
create mode 100644 grub-core/net/efi/ip4_config.c
create mode 100644 grub-core/net/efi/ip6_config.c
create mode 100644 grub-core/net/efi/net.c
create mode 100644 grub-core/net/efi/pxe.c
create mode 100644 include/grub/efi/dhcp.h
create mode 100644 include/grub/efi/http.h
create mode 100644 include/grub/net/efi.h
--
2.40.0
- [PATCH v5 00/20] UEFI networking support including ipv6 + dhcpv6,
Robbie Harwood <=
- [PATCH v5 04/20] efinet + bootp: add net_bootp6 command supporting dhcpv6, Robbie Harwood, 2023/04/25
- [PATCH v5 01/20] Revert "net/http: Allow use of non-standard TCP/IP ports", Robbie Harwood, 2023/04/25
- [PATCH v5 13/20] Add fw_path variable to detect config file on efi, Robbie Harwood, 2023/04/25
- [PATCH v5 19/20] normal/main: Discover the device to read the config from as a fallback, Robbie Harwood, 2023/04/25
- [PATCH v5 10/20] Support UEFI networking protocols, Robbie Harwood, 2023/04/25
- [PATCH v5 03/20] net/http: check result of grub_netbuff_put() in http_receive(), Robbie Harwood, 2023/04/25
- [PATCH v5 16/20] Prepend prefix when HTTP path is relative, Robbie Harwood, 2023/04/25
- [PATCH v5 11/20] efinet: also use the firmware acceleration for http, Robbie Harwood, 2023/04/25
- [PATCH v5 08/20] efinet Configure network from UEFI device path, Robbie Harwood, 2023/04/25
- [PATCH v5 06/20] grub.texi: Add net_bootp6 doumentation, Robbie Harwood, 2023/04/25