MdeModulePkg/Network: Add 32bit subnet mask support for IP4 PXE boot.

This patch updates IP4 stack to support 32bit subnet mask in PXE boot process.
When 32bit subnet mask is used, the IP4 driver couldn't use the subnet mask to determine
whether destination IP address is on-link or not, so it will always try to send all the
packets to the destination IP address directly first, if failed it will continue
to try the default gateway.

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Fu Siyuan <siyuan.fu@intel.com>
Reviewed-by: Ye Ting <ting.ye@intel.com>
Reviewed-by: Wu Jiaxin <jiaxin.wu@intel.com>
10 files changed
tree: 2b9d7d455a8d0ddcc6250e2ef7e7464e88d1b1e1
  1. AppPkg/
  2. ArmPkg/
  3. ArmPlatformPkg/
  4. ArmVirtPkg/
  5. BaseTools/
  6. BeagleBoardPkg/
  7. Conf/
  8. CorebootModulePkg/
  9. CorebootPayloadPkg/
  10. CryptoPkg/
  11. DuetPkg/
  12. EdkCompatibilityPkg/
  13. EdkShellBinPkg/
  14. EdkShellPkg/
  15. EmbeddedPkg/
  16. EmulatorPkg/
  17. FatBinPkg/
  18. FatPkg/
  19. FmpDevicePkg/
  20. IntelFrameworkModulePkg/
  21. IntelFrameworkPkg/
  22. IntelFsp2Pkg/
  23. IntelFsp2WrapperPkg/
  24. IntelFspPkg/
  25. IntelFspWrapperPkg/
  26. IntelSiliconPkg/
  27. MdeModulePkg/
  28. MdePkg/
  29. NetworkPkg/
  30. Nt32Pkg/
  31. Omap35xxPkg/
  32. OptionRomPkg/
  33. OvmfPkg/
  34. PcAtChipsetPkg/
  35. QuarkPlatformPkg/
  36. QuarkSocPkg/
  37. SecurityPkg/
  38. ShellBinPkg/
  39. ShellPkg/
  40. SignedCapsulePkg/
  41. SourceLevelDebugPkg/
  42. StandaloneMmPkg/
  43. StdLib/
  44. StdLibPrivateInternalFiles/
  45. UefiCpuPkg/
  46. UnixPkg/
  47. Vlv2DeviceRefCodePkg/
  48. Vlv2TbltDevicePkg/
  49. .gitignore
  50. .gitmodules
  51. BuildNotes2.txt
  52. Contributions.txt
  53. edksetup.bat
  54. edksetup.sh
  55. License.txt
  56. Maintainers.txt
  57. Readme.md
Readme.md

EDK II Project

A modern, feature-rich, cross-platform firmware development environment for the UEFI and PI specifications from www.uefi.org.

Contributions to the EDK II open source project are covered by the TianoCore Contribution Agreement 1.1

The majority of the content in the EDK II open source project uses a BSD 2-Clause License. The EDK II open source project contains the following components that are covered by additional licenses:

The EDK II Project is composed of packages. The maintainers for each package are listed in Maintainers.txt.

Resources