From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wr1-f51.google.com (mail-wr1-f51.google.com [209.85.221.51]) by mx.groups.io with SMTP id smtpd.web11.60028.1595868538975187379 for ; Mon, 27 Jul 2020 09:48:59 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@broadcom.com header.s=google header.b=ODuoM4gW; spf=permerror, err=parse error for token &{10 18 %{i}._ip.%{h}._ehlo.%{d}._spf.vali.email}: invalid domain name (domain: broadcom.com, ip: 209.85.221.51, mailfrom: vladimir.olovyannikov@broadcom.com) Received: by mail-wr1-f51.google.com with SMTP id l2so5023025wrc.7 for ; Mon, 27 Jul 2020 09:48:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=G8L26J7Ybaily6PWvyU4OWfffqfAfnHy/m3NvWBbzWg=; b=ODuoM4gWb/udJZ7AQ1ZptU5csQnYq6r4d7AtsPchvXLtRaj1S6CTxvgA2kLj4UB8xP Ny1EmHj8QmyFYXpDMGVmc7fLfBmp4xYVy0P3xSQhI2+lWEFHd94XUc2he7y/py40SDlh d4oRBN6KU3E3mQp0CEXSBJAD8TOa8wowKunS8= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=G8L26J7Ybaily6PWvyU4OWfffqfAfnHy/m3NvWBbzWg=; b=m20xqIaELV2FEBL8u/WUjGBsncPFh3xvq0+a3Nh37jmg8BzooM2jOym3rf+zXE6YFw r+j384FRwhsPmmsmbH8qfbv03uH00ko02JgOxtGmOTY48UzJ0PGgwDz1OPsVm+4pd3KW 3QU+fkgIsCW83pdc6oJA9kiFezx6dMN+OfXVIe+0UGUIMBD+gK6nXCFV7rqA+PvUtH+8 TY/lCVgcP0F7aNW0ZxKSvJYUfMvSzp77oO5CtMgL8/g86lFDqztqVNnZg7ezfjLYi1+K SpHZadVE0QXhKfp93VJk/iGIkH1uonwL8CcCtZjjqIjcdyBgXn+XD5er5b3ijFJ1Y663 OICQ== X-Gm-Message-State: AOAM531hP4eG0afFYeIO3sg9EkgddtEVd4dCSgTw6l8QP74UTkpnUVJk VaCqRgfA73pTAOFSJI+q5hIBrdiQPjpWRABmrmO/X3BJn1VxczOjwjh7UDHUa14me2q+pTkkZzM yQadTnu7ee3jtmXMXFgbNZF+jKLCIsEQLJeh7+anHSDijHw7Jnx+WLW85u1VqSycrD064BhuBXU lnPH7inpNj X-Google-Smtp-Source: ABdhPJyU1rco1LhJY7Z1CCCSvlVZwuaNLtCQdyJi3QurqmWmCZ2ARR/ZuwMO1DWoAchsqs91hadf/A== X-Received: by 2002:adf:df89:: with SMTP id z9mr21016098wrl.395.1595868537215; Mon, 27 Jul 2020 09:48:57 -0700 (PDT) Return-Path: Received: from LBRMN-LNXUB114.ric.broadcom.net ([192.19.228.250]) by smtp.gmail.com with ESMTPSA id r206sm256773wma.6.2020.07.27.09.48.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 27 Jul 2020 09:48:55 -0700 (PDT) From: "Vladimir Olovyannikov" To: devel@edk2.groups.io Cc: Laszlo Ersek , Vladimir Olovyannikov , Samer El-Haj-Mahmoud , Zhichao Gao , Maciej Rabeda , Jiaxin Wu , Siyuan Fu , Ray Ni , Liming Gao , Nd Subject: [PATCH v5 0/1] ShellPkg/DynamicCommand: add HttpDynamicCommand Date: Mon, 27 Jul 2020 09:48:29 -0700 Message-Id: <20200727164830.25829-1-vladimir.olovyannikov@broadcom.com> X-Mailer: git-send-email 2.26.2.266.ge870325ee8 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Signed-off-by: Vladimir Olovyannikov Cc: Samer El-Haj-Mahmoud Cc: Laszlo Ersek Cc: Zhichao Gao Cc: Maciej Rabeda Cc: Jiaxin Wu Cc: Siyuan Fu Cc: Ray Ni Cc: Liming Gao Cc: Nd 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 v5 changes: Address Laszlo's comments on patch v4: - Remove -m option as it introduced TimerLib dependency; - Drop "Tested-by" flags. Vladimir Olovyannikov (1): ShellPkg/DynamicCommand: add HttpDynamicCommand CryptoPkg/Library/OpensslLib/openssl | 2 +- .../DynamicCommand/HttpDynamicCommand/Http.c | 1715 +++++++++++++++++ .../DynamicCommand/HttpDynamicCommand/Http.h | 89 + .../HttpDynamicCommand/Http.uni | 117 ++ .../HttpDynamicCommand/HttpApp.c | 53 + .../HttpDynamicCommand/HttpApp.inf | 58 + .../HttpDynamicCommand/HttpDynamicCommand.c | 134 ++ .../HttpDynamicCommand/HttpDynamicCommand.inf | 63 + ShellPkg/Include/Guid/ShellLibHiiGuid.h | 5 + ShellPkg/ShellPkg.dec | 1 + ShellPkg/ShellPkg.dsc | 5 + 11 files changed, 2241 insertions(+), 1 deletion(-) 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