From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pf1-f182.google.com (mail-pf1-f182.google.com [209.85.210.182]) by mx.groups.io with SMTP id smtpd.web12.743.1598376080529607259 for ; Tue, 25 Aug 2020 10:21:20 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@broadcom.com header.s=google header.b=gZRMMvwP; 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.210.182, mailfrom: vladimir.olovyannikov@broadcom.com) Received: by mail-pf1-f182.google.com with SMTP id t185so4754765pfd.13 for ; Tue, 25 Aug 2020 10:21:20 -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=zEzN2XB1Bgvq8LzrNNoyC0C4Y3JIoDMi9C2ZUYHaTM8=; b=gZRMMvwP3wvEo3Owu6RY8qzPlgqjsaetR2oNnhI5P8XjJ9bObvH1XLNwKfoxdUrOJ5 XEYcW0QMNaKUfK4LBARt89KVVtCHsZuwBq60uCUdrx6Rx8zZQkofq7awFyMlVj6BvkpP lFwXZV4AEy4HqCR00Ho3d9sgSyq6ZlXqQZ1vs= 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=zEzN2XB1Bgvq8LzrNNoyC0C4Y3JIoDMi9C2ZUYHaTM8=; b=ZIMB/1DYqh/9qrlbaujBiqBDd7joXpJrLdTqAzR4Rzc1lI1gbbjyQj3J4R4ds3pkKt A14W0z1JMaO4dgxwdeS1wssb6EPg1Yzux1jHvMp5WEnYYJBQZ/EMk7CKIyb4W3R/AHfe u5XIDkVw79mq/zj5zk3PEvB1CskDZZcfqSlByM/RXw5znE+Bj6zgSOBlz4Fwl6Bpc7Ou IkvglcgBBQY+hSN+cKOM1pb3OrMAEeA85mCbkiIwBVkgJdOaZBj58J6XsKOWKrRop7mG SfC4oiEDSdZ1hwrSb0L/R1CUje/Eqv+IgH/+xdrtWjd24d2ds/kDs9rS1ji/QCRCXkQw OX6Q== X-Gm-Message-State: AOAM5336xF2qwUMiNwrSx/YyoDMQYmHcFAyhkkGg0GH+Hm/xTqPCwZCp 8SltNGwYVFigxnZPXItKwoVkjaDj6pgABuHt+R8XKbT/rPV6R8xHbbhjvR7RWjHjGSXtgHL1F/6 S0dUd3Zj/eyNF47eC4Lftb9Xi3zao7SpqIj8eHz5LnaJBCk6noV5/7J1CQK/T8CQ0oIzAwHC62E 9hlmwoINS5pPCUTw== X-Google-Smtp-Source: ABdhPJzTd8V/u8o62eisk3ZQEccvbHQT/xNRXGuHd84HKb93pBBRrcGcn4CymluA+xiERBSAZBCeUQ== X-Received: by 2002:aa7:9a5b:: with SMTP id x27mr8482671pfj.15.1598376079144; Tue, 25 Aug 2020 10:21:19 -0700 (PDT) Return-Path: Received: from LBRMN-LNXUB114.ric.broadcom.net ([192.19.228.250]) by smtp.gmail.com with ESMTPSA id a15sm15402599pfo.185.2020.08.25.10.21.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 25 Aug 2020 10:21:18 -0700 (PDT) From: "Vladimir Olovyannikov" To: devel@edk2.groups.io Cc: Laszlo Ersek , Vladimir Olovyannikov , Maciej Rabeda , Zhichao Gao , Jiaxin Wu , Siyuan Fu , Ray Ni , Liming Gao , Nd , Samer El-Haj-Mahmoud Subject: [PATCH v7 0/1] ShellPkg/DynamicCommand: add HttpDynamicCommand Date: Tue, 25 Aug 2020 10:20:48 -0700 Message-Id: <20200825172049.30912-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 Reviewed-by: Maciej Rabeda 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 v7 changes: Address Laszlo' and Maciej's comments: - Remove openssl submodule change accidentally added to the v6 patchset; - Fix code style issues in the code overlooked in the previous patchset. 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 | 88 + ShellPkg/Include/Guid/ShellLibHiiGuid.h | 5 + .../DynamicCommand/HttpDynamicCommand/Http.c | 1694 +++++++++++++++++ .../HttpDynamicCommand/HttpApp.c | 61 + .../HttpDynamicCommand/HttpDynamicCommand.c | 137 ++ .../HttpDynamicCommand/Http.uni | 116 ++ 10 files changed, 2228 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