From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pl1-f175.google.com (mail-pl1-f175.google.com [209.85.214.175]) by mx.groups.io with SMTP id smtpd.web10.14003.1599019721748908254 for ; Tue, 01 Sep 2020 21:08:42 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@broadcom.com header.s=google header.b=FnQ2epkt; 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.214.175, mailfrom: vladimir.olovyannikov@broadcom.com) Received: by mail-pl1-f175.google.com with SMTP id q3so1651340pls.11 for ; Tue, 01 Sep 2020 21:08:41 -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=+Et8z3ygxNApxZNKmIUEOqgT6MaAoRY+joLUyScNfpY=; b=FnQ2epktM0B1IEI9RLCPOpkzTj/mzVyR7xihXqpbiM1yoF5sHj+bxFnortO410v9hM AR23Pwk7NEpk5Qxw2TbiriCr/PuOxkKfT1+M6Fvaov0djL71ynHUsmj74e4Dl08CDraD r1VfhlME3ksNjZ7zL1TUyoyobHNQf5yKzr/6A= 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=+Et8z3ygxNApxZNKmIUEOqgT6MaAoRY+joLUyScNfpY=; b=mScfUODGS0z9VRe8roARBqQyWYs2GNUMj4cFNQr6kgndGZaHrj9vQSgH9LGWSoxgnM Ky3cTLnUSRzkozwRKOPZc0NyIV67bii5h8mdrco5qok0BfJAMHfbfauscp9/LMFnsNdc 3EaPLqcZwdiCy2SIpjl4pFLfNSYvJ1722rQuZo7+YecXpj6DjV4nCLALNS6VLJlLOTOt EHh23u2kVN93gXAbIEMd2UqEOBp+QbHeKPTRBGwDbVjo6l0AiWy6oxMFCsxONokBACZp 0cECRonGuFkRHwNfvbY1e4OM6EtaDhNp9HY3UsS1VqGvzFQPVrK+fPtLoOVe1eQO9l4z XOJg== X-Gm-Message-State: AOAM530p0GwD/9wUAGdXt5/LbAPgmlzm3HE3jXVUTPQkqqhk3gVsX1ih YbtUuSfmWFzpXsC8KUFho8lZ/cB9A9nXCYNJ1llxtwQ40rB52scD6Q/0cPLKgKhUG1WdwdKgvAe rMy/c00my48GcHhl600sxP8m0lSCCBBVw+2kwfOM7W3dL62zEcMEVgV1yoTCmjGlW7YJdkT5Ajv ZVc/BRql4NaJxeWg== X-Google-Smtp-Source: ABdhPJx+0FptuM2JcaTcQOJ9aH5zKi2t2GCvf47Rs6Mn248wkcRI8fN2ka5rYgVFk43GugPbyomJHg== X-Received: by 2002:a17:90a:448e:: with SMTP id t14mr475520pjg.59.1599019720582; Tue, 01 Sep 2020 21:08:40 -0700 (PDT) Return-Path: Received: from LBRMN-LNXUB114.ric.broadcom.net ([192.19.228.250]) by smtp.gmail.com with ESMTPSA id h14sm2927549pjt.24.2020.09.01.21.08.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 01 Sep 2020 21:08:39 -0700 (PDT) From: "Vladimir Olovyannikov" To: devel@edk2.groups.io Cc: Vladimir Olovyannikov , Zhichao Gao , Maciej Rabeda , Jiaxin Wu , Siyuan Fu , Ray Ni , Liming Gao , Nd , Laszlo Ersek , Samer El-Haj-Mahmoud Subject: [PATCH v10 0/1] ShellPkg/DynamicCommand: add HttpDynamicCommand Date: Tue, 1 Sep 2020 21:08:20 -0700 Message-Id: <20200902040821.24144-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: Zhichao Gao Cc: Maciej Rabeda Cc: Jiaxin Wu Cc: Siyuan Fu Cc: Ray Ni Cc: Liming Gao Cc: Nd Cc: Laszlo Ersek Cc: Samer El-Haj-Mahmoud 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 v10 changes: Address comments from Zhichao: - fix indentation issues; - fix type inconsistency for EfiGetEpochDays function. Vladimir Olovyannikov (1): ShellPkg/DynamicCommand: add HttpDynamicCommand ShellPkg/ShellPkg.dec | 1 + ShellPkg/ShellPkg.dsc | 5 + .../HttpDynamicCommand/HttpApp.inf | 58 + .../HttpDynamicCommand/HttpDynamicCommand.inf | 63 + .../DynamicCommand/HttpDynamicCommand/Http.h | 90 + ShellPkg/Include/Guid/ShellLibHiiGuid.h | 5 + .../DynamicCommand/HttpDynamicCommand/Http.c | 1831 +++++++++++++++++ .../HttpDynamicCommand/HttpApp.c | 61 + .../HttpDynamicCommand/HttpDynamicCommand.c | 137 ++ .../HttpDynamicCommand/Http.uni | 117 ++ 10 files changed, 2368 insertions(+) create mode 100644 ShellPkg/DynamicCommand/HttpDynamicCommand/HttpApp.inf create mode 100644 ShellPkg/DynamicCommand/HttpDynamicCommand/HttpDynamicCommand.inf create mode 100644 ShellPkg/DynamicCommand/HttpDynamicCommand/Http.h create mode 100644 ShellPkg/DynamicCommand/HttpDynamicCommand/Http.c create mode 100644 ShellPkg/DynamicCommand/HttpDynamicCommand/HttpApp.c create mode 100644 ShellPkg/DynamicCommand/HttpDynamicCommand/HttpDynamicCommand.c create mode 100644 ShellPkg/DynamicCommand/HttpDynamicCommand/Http.uni -- 2.26.2.266.ge870325ee8