From 6add86ab5967931ef9bca871931443e69f9cc09d Mon Sep 17 00:00:00 2001 From: Jaben Carsey Date: Thu, 24 Sep 2015 20:44:59 +0000 Subject: [PATCH] ShellPkg: Update tftp to build with current tip Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jaben Carsey Signed-off-by: Tapan Shah Signed-off-by: Jiaxin Wu Reviewed-by: Qiu Shumin git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18543 6f19259b-4bc3-4df7-8a09-765794883524 --- .../Library/UefiShellTftpCommandLib/Tftp.c | 26 +++++++++++------- .../UefiShellTftpCommandLib.h | 9 +++--- .../UefiShellTftpCommandLib.uni | Bin 8748 -> 8856 bytes 3 files changed, 20 insertions(+), 15 deletions(-) diff --git a/ShellPkg/Library/UefiShellTftpCommandLib/Tftp.c b/ShellPkg/Library/UefiShellTftpCommandLib/Tftp.c index d2f7046de0..2dc9287020 100644 --- a/ShellPkg/Library/UefiShellTftpCommandLib/Tftp.c +++ b/ShellPkg/Library/UefiShellTftpCommandLib/Tftp.c @@ -2,6 +2,8 @@ The implementation for the 'tftp' Shell command. Copyright (c) 2015, ARM Ltd. All rights reserved.
+ Copyright (c) 2015, Intel Corporation. All rights reserved.
+ (C) Copyright 2015 Hewlett Packard Enterprise Development LP
This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License @@ -14,6 +16,8 @@ #include "UefiShellTftpCommandLib.h" +#define IP4_CONFIG2_INTERFACE_INFO_NAME_LENGTH 32 + /* Constant strings and definitions related to the message indicating the amount of progress in the dowloading of a TFTP file. @@ -59,7 +63,8 @@ StringToUint16 ( @param[in] NicNumber The network physical device number. @param[out] NicName Address where to store the NIC name. The memory area has to be at least - IP4_NIC_NAME_LENGTH bytes wide. + IP4_CONFIG2_INTERFACE_INFO_NAME_LENGTH + double byte wide. @return EFI_SUCCESS The name of the NIC was returned. @return Others The creation of the child for the Managed @@ -258,7 +263,7 @@ ShellCommandRunTftp ( EFI_HANDLE *Handles; UINTN HandleCount; UINTN NicNumber; - CHAR16 NicName[IP4_NIC_NAME_LENGTH]; + CHAR16 NicName[IP4_CONFIG2_INTERFACE_INFO_NAME_LENGTH]; EFI_HANDLE ControllerHandle; EFI_HANDLE Mtftp4ChildHandle; EFI_MTFTP4_PROTOCOL *Mtftp4; @@ -271,6 +276,7 @@ ShellCommandRunTftp ( NicFound = FALSE; AsciiRemoteFilePath = NULL; Handles = NULL; + FileSize = 0; // // Initialize the Shell library (we must be in non-auto-init...) @@ -571,7 +577,7 @@ StringToUint16 ( return FALSE; } - *Value = Val; + *Value = (UINT16)Val; return TRUE; } @@ -582,7 +588,8 @@ StringToUint16 ( @param[in] NicNumber The network physical device number. @param[out] NicName Address where to store the NIC name. The memory area has to be at least - IP4_NIC_NAME_LENGTH bytes wide. + IP4_CONFIG2_INTERFACE_INFO_NAME_LENGTH + double byte wide. @return EFI_SUCCESS The name of the NIC was returned. @return Others The creation of the child for the Managed @@ -623,7 +630,7 @@ GetNicName ( UnicodeSPrint ( NicName, - IP4_NIC_NAME_LENGTH, + IP4_CONFIG2_INTERFACE_INFO_NAME_LENGTH, SnpMode.IfType == NET_IFTYPE_ETHERNET ? L"eth%d" : L"unk%d" , @@ -942,7 +949,7 @@ CheckPacket ( { DOWNLOAD_CONTEXT *Context; CHAR16 Progress[TFTP_PROGRESS_MESSAGE_SIZE]; - UINT64 NbOfKb; + UINTN NbOfKb; UINTN Index; UINTN LastStep; UINTN Step; @@ -966,10 +973,9 @@ CheckPacket ( NbOfKb = Context->DownloadedNbOfBytes / 1024; Progress[0] = L'\0'; - LastStep = (Context->LastReportedNbOfBytes * TFTP_PROGRESS_SLIDER_STEPS) / - Context->FileSize; - Step = (Context->DownloadedNbOfBytes * TFTP_PROGRESS_SLIDER_STEPS) / - Context->FileSize; + LastStep = (Context->LastReportedNbOfBytes * TFTP_PROGRESS_SLIDER_STEPS) / Context->FileSize; + Step = (Context->DownloadedNbOfBytes * TFTP_PROGRESS_SLIDER_STEPS) / Context->FileSize; + if (Step <= LastStep) { return EFI_SUCCESS; } diff --git a/ShellPkg/Library/UefiShellTftpCommandLib/UefiShellTftpCommandLib.h b/ShellPkg/Library/UefiShellTftpCommandLib/UefiShellTftpCommandLib.h index a73b86c85b..bef1e1d9f7 100644 --- a/ShellPkg/Library/UefiShellTftpCommandLib/UefiShellTftpCommandLib.h +++ b/ShellPkg/Library/UefiShellTftpCommandLib/UefiShellTftpCommandLib.h @@ -1,7 +1,7 @@ /** @file header file for NULL named library for 'tftp' Shell command functions. - Copyright (c) 2010 - 2011, Intel Corporation. All rights reserved.
+ Copyright (c) 2010 - 2015, Intel Corporation. All rights reserved.
Copyright (c) 2015, ARM Ltd. All rights reserved.
This program and the accompanying materials @@ -21,7 +21,6 @@ #include #include -#include #include #include @@ -42,9 +41,9 @@ extern EFI_HANDLE gShellTftpHiiHandle; typedef struct { - UINT64 FileSize; - UINT64 DownloadedNbOfBytes; - UINT64 LastReportedNbOfBytes; + UINTN FileSize; + UINTN DownloadedNbOfBytes; + UINTN LastReportedNbOfBytes; } DOWNLOAD_CONTEXT; /** diff --git a/ShellPkg/Library/UefiShellTftpCommandLib/UefiShellTftpCommandLib.uni b/ShellPkg/Library/UefiShellTftpCommandLib/UefiShellTftpCommandLib.uni index 607a3602d2a3aad30619c0844162e7399c0aba9a..43b8cc5e7cd8726138c600b96b4ebbb1c960824c 100644 GIT binary patch delta 329 zcmZ4EGQ)L(lesB_0)q!bDnmI#4v;JXLIs8ZhD3&BhHM~N#E=5yyE5bf#Z!U20wB(0 zC}v2Vm@Ccf!w|4>p)ZSQ2tyiBx`4r%A)g@^2or(IQzrAWc8Z5ExG{tPjZ**`ha|W8 zAZxWSw;zK)P|}qln89kYqKGi30)rug9#Cn>$vQd-iPA)g_ap#Uh5$56?j!=S+6 z!=MLLrnhmrFN?e%Ln=cFLpe}Q5m1v614MN$Sak|R@#LQ@o!Uk~^#(wFc_?ZX7z}}8 z$zapr>Nn41trlihUnQCxI#jcgmg0z(Q=9mr}0h9rhcuzDT2l*u#X lx+XVpiA+8uDl|Djz5>MNEC#9p`8yS)YLY_U<~9W(CII6DN&o-= -- 2.39.2