OpenNetworkBoot: Add PXE and HTTP(S) Boot support #562
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This replaces #554, now that the previous two changes #552 #553 are merged.
I was surprised how much of network boot is done in the OVMF UI package. Hence needing to take (sometimes with small mods) several bits of that, in the files imported from EDK 2; and then needing to reimplement the rest of it, in the rest of this driver. Doing it that way means it works with existing network boot drivers, up to the top level of the network boot stack; and means it works, full stop, i.e. no need to try to work out from scratch the correct usage patterns for the lower level network libraries, which are very low level (e.g. you can't 'just' issue a GET or a POST in http, very far from it).
The three commits here are: 1. import three edk 2 files; 2. clean them down to just what I kept and modified; 3. everything else, so if you review just the third commit, it is much easier to see what I changed from the originals in BmBoot.c, BmBootDescription.c and TlsAuthConfigImpl.c.
As before, the biggest change for the rest of the project is switching to use the CryptoPkg intrinsics lib. Maybe that change per se could be discussed independent of reviewing the rest of this? (REFS: #555; acidanthera/audk#67; tianocore/edk2#6169 - based on these refs, I say a) we should use it, and b) we should leave it where it is (not move to MdePkg) for now.)EDIT: Now rebased and updated to use new MdePkg IntrinsicLib location.