ShellPkg: Add optional 'tftp' EFI Shell command
This 'tftp' command allows to download a file from a TFTP server. A specific network interface can be chosen in case there are multiple interfaces. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ronald Cron <Ronald.Cron@arm.com> Reviewed-by: Olivier Martin <Olivier.Martin@arm.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18015 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
committed by
oliviermartin
parent
8f7b315b1c
commit
6807426071
@ -0,0 +1,63 @@
|
||||
/** @file
|
||||
header file for NULL named library for 'tftp' Shell command functions.
|
||||
|
||||
Copyright (c) 2010 - 2011, Intel Corporation. All rights reserved. <BR>
|
||||
Copyright (c) 2015, ARM Ltd. All rights reserved.<BR>
|
||||
|
||||
This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions of the BSD License
|
||||
which accompanies this distribution. The full text of the license may be found at
|
||||
http://opensource.org/licenses/bsd-license.php
|
||||
|
||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||
|
||||
**/
|
||||
|
||||
#ifndef _UEFI_SHELL_TFTP_COMMAND_LIB_H_
|
||||
#define _UEFI_SHELL_TFTP_COMMAND_LIB_H_
|
||||
|
||||
#include <Uefi.h>
|
||||
#include <ShellBase.h>
|
||||
|
||||
#include <Guid/ShellLibHiiGuid.h>
|
||||
#include <Guid/NicIp4ConfigNvData.h>
|
||||
|
||||
#include <Protocol/ServiceBinding.h>
|
||||
#include <Protocol/Mtftp4.h>
|
||||
|
||||
#include <Library/BaseLib.h>
|
||||
#include <Library/BaseMemoryLib.h>
|
||||
#include <Library/DebugLib.h>
|
||||
#include <Library/MemoryAllocationLib.h>
|
||||
#include <Library/ShellCommandLib.h>
|
||||
#include <Library/ShellLib.h>
|
||||
#include <Library/UefiLib.h>
|
||||
#include <Library/UefiRuntimeServicesTableLib.h>
|
||||
#include <Library/UefiBootServicesTableLib.h>
|
||||
#include <Library/HiiLib.h>
|
||||
#include <Library/NetLib.h>
|
||||
#include <Library/PrintLib.h>
|
||||
|
||||
extern EFI_HANDLE gShellTftpHiiHandle;
|
||||
|
||||
typedef struct {
|
||||
UINT64 FileSize;
|
||||
UINT64 DownloadedNbOfBytes;
|
||||
UINT64 LastReportedNbOfBytes;
|
||||
} DOWNLOAD_CONTEXT;
|
||||
|
||||
/**
|
||||
Function for 'tftp' command.
|
||||
|
||||
@param[in] ImageHandle Handle to the Image (NULL if Internal).
|
||||
@param[in] SystemTable Pointer to the System Table (NULL if Internal).
|
||||
**/
|
||||
SHELL_STATUS
|
||||
EFIAPI
|
||||
ShellCommandRunTftp (
|
||||
IN EFI_HANDLE ImageHandle,
|
||||
IN EFI_SYSTEM_TABLE *SystemTable
|
||||
);
|
||||
|
||||
#endif /* _UEFI_SHELL_TFTP_COMMAND_LIB_H_ */
|
Reference in New Issue
Block a user