]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
loader: add HTTP support using UEFI
authorbcran <bcran@FreeBSD.org>
Mon, 24 Jun 2019 23:18:42 +0000 (23:18 +0000)
committerbcran <bcran@FreeBSD.org>
Mon, 24 Jun 2019 23:18:42 +0000 (23:18 +0000)
commitdcddd844b793c2cced93dbfbdde6de1ccbc5b3cc
tree986f09b5cb21cf4b8b89f13b6d54dc28e1d7e9fa
parentd4ca47be394b58863863386ae3acd30e25079071
loader: add HTTP support using UEFI

Add support for an HTTP "network filesystem" using the UEFI's HTTP
stack.

This also supports HTTPS, but TianoCore EDK2 implementations currently
crash while fetching loader files.
Only IPv4 is supported at the moment. IPv6 support is planned for a
follow-up changeset.

Note that we include some headers from the TianoCore EDK II project in
stand/efi/include/Protocol verbatim, including links to the license instead
of including the full text because that's their preferred way of
communicating it, despite not being normal FreeBSD project practice.

Submitted by: scottph
Reviewed by: imp, bcran
Differential Revision: https://reviews.freebsd.org/D20643
stand/efi/include/Protocol/Http.h [new file with mode: 0644]
stand/efi/include/Protocol/Ip4Config2.h [new file with mode: 0644]
stand/efi/include/Protocol/ServiceBinding.h [new file with mode: 0644]
stand/efi/include/efidevp.h
stand/efi/include/efilib.h
stand/efi/libefi/Makefile
stand/efi/libefi/efihttp.c [new file with mode: 0644]
stand/efi/loader/conf.c
stand/libsa/stand.h