Signed-off-by: Vladimir Olovyannikov <vladimir.olovyanni...@broadcom.com>
Tested-By: Samer El-Haj-Mahmoud <samer.el-haj-mahm...@arm.com>
Tested-By: Laszlo Ersek <ler...@redhat.com>
Cc: Zhichao Gao <zhichao....@intel.com>
Cc: Maciej Rabeda <maciej.rab...@linux.intel.com>
Cc: Jiaxin Wu <jiaxin...@intel.com>
Cc: Siyuan Fu <siyuan...@intel.com>
Cc: Ray Ni <ray...@intel.com>
Cc: Liming Gao <liming....@intel.com>
Cc: Nd <n...@arm.com>

This patchset introduces an http client utilizing EDK2 HTTP protocol, to
allow fast image downloading from http/https servers.
HTTP download speed is usually faster than tftp.
The client is based on the same approach as tftp dynamic command, and
uses the same UEFI Shell command line parameters. This makes it easy
integrating http into existing UEFI Shell scripts.
Note that to enable HTTP download, feature Pcd
gEfiNetworkPkgTokenSpaceGuid.PcdAllowHttpConnections must be set to TRUE.

BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=2860

PATCH v4 changes:
Address comments based on Laszlo's testing:
 - Fix .uni help file missing "\r\n" before RETURNVALUES section;
 - delete the downloaded file in case of an error, unless
   -k ("keep bad") option is provided on command line.
 
Allow download time measurement in seconds
by providing -m parameter on command line.

Vladimir Olovyannikov (1):
  ShellPkg/DynamicCommand: add HttpDynamicCommand

 .../DynamicCommand/HttpDynamicCommand/Http.c  | 1730 +++++++++++++++++
 .../DynamicCommand/HttpDynamicCommand/Http.h  |   90 +
 .../HttpDynamicCommand/Http.uni               |  117 ++
 .../HttpDynamicCommand/HttpApp.c              |   53 +
 .../HttpDynamicCommand/HttpApp.inf            |   59 +
 .../HttpDynamicCommand/HttpDynamicCommand.c   |  134 ++
 .../HttpDynamicCommand/HttpDynamicCommand.inf |   64 +
 ShellPkg/Include/Guid/ShellLibHiiGuid.h       |    5 +
 ShellPkg/ShellPkg.dec                         |    1 +
 ShellPkg/ShellPkg.dsc                         |    5 +
 10 files changed, 2258 insertions(+)
 create mode 100644 ShellPkg/DynamicCommand/HttpDynamicCommand/Http.c
 create mode 100644 ShellPkg/DynamicCommand/HttpDynamicCommand/Http.h
 create mode 100644 ShellPkg/DynamicCommand/HttpDynamicCommand/Http.uni
 create mode 100644 ShellPkg/DynamicCommand/HttpDynamicCommand/HttpApp.c
 create mode 100644 ShellPkg/DynamicCommand/HttpDynamicCommand/HttpApp.inf
 create mode 100644 
ShellPkg/DynamicCommand/HttpDynamicCommand/HttpDynamicCommand.c
 create mode 100644 
ShellPkg/DynamicCommand/HttpDynamicCommand/HttpDynamicCommand.inf

-- 
2.26.2.266.ge870325ee8


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#63216): https://edk2.groups.io/g/devel/message/63216
Mute This Topic: https://groups.io/mt/75754840/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to