mirror of https://github.com/acidanthera/audk.git
Updated EFI_MTFTP4_TOKEN structure to add member Context. It's an incompatible change adopted by UEFI group.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9005 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
e7d41e1818
commit
ea886bef0a
|
@ -1,7 +1,7 @@
|
|||
/** @file
|
||||
Interface routine for Mtftp4.
|
||||
|
||||
Copyright (c) 2006 - 2007, 2009, Intel Corporation<BR>
|
||||
Copyright (c) 2006 - 2009, Intel Corporation<BR>
|
||||
All rights reserved. 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
|
||||
|
@ -111,13 +111,11 @@ Mtftp4GetInfoCheckPacket (
|
|||
IN EFI_MTFTP4_PACKET *Packet
|
||||
)
|
||||
{
|
||||
MTFTP4_PROTOCOL *Instance;
|
||||
MTFTP4_GETINFO_STATE *State;
|
||||
EFI_STATUS Status;
|
||||
UINT16 OpCode;
|
||||
|
||||
Instance = MTFTP4_PROTOCOL_FROM_THIS (This);
|
||||
State = &Instance->GetInfoState;
|
||||
State = (MTFTP4_GETINFO_STATE *) Token->Context;
|
||||
OpCode = NTOHS (Packet->OpCode);
|
||||
|
||||
//
|
||||
|
@ -984,8 +982,7 @@ EfiMtftp4GetInfo (
|
|||
)
|
||||
{
|
||||
EFI_MTFTP4_TOKEN Token;
|
||||
MTFTP4_PROTOCOL *Instance;
|
||||
MTFTP4_GETINFO_STATE *State;
|
||||
MTFTP4_GETINFO_STATE State;
|
||||
EFI_STATUS Status;
|
||||
|
||||
if ((This == NULL) || (Filename == NULL) || (PacketLength == NULL) ||
|
||||
|
@ -998,11 +995,9 @@ EfiMtftp4GetInfo (
|
|||
}
|
||||
|
||||
*PacketLength = 0;
|
||||
Instance = MTFTP4_PROTOCOL_FROM_THIS (This);
|
||||
State = &Instance->GetInfoState;
|
||||
State->Packet = Packet;
|
||||
State->PacketLen = PacketLength;
|
||||
State->Status = EFI_SUCCESS;
|
||||
State.Packet = Packet;
|
||||
State.PacketLen = PacketLength;
|
||||
State.Status = EFI_SUCCESS;
|
||||
|
||||
//
|
||||
// Fill in the Token to issue an synchronous ReadFile operation
|
||||
|
@ -1016,6 +1011,7 @@ EfiMtftp4GetInfo (
|
|||
Token.OptionList = OptionList;
|
||||
Token.BufferSize = 0;
|
||||
Token.Buffer = NULL;
|
||||
Token.Context = &State;
|
||||
Token.CheckPacket = Mtftp4GetInfoCheckPacket;
|
||||
Token.TimeoutCallback = NULL;
|
||||
Token.PacketNeeded = NULL;
|
||||
|
@ -1023,7 +1019,7 @@ EfiMtftp4GetInfo (
|
|||
Status = EfiMtftp4ReadFile (This, &Token);
|
||||
|
||||
if (EFI_ABORTED == Status) {
|
||||
return State->Status;
|
||||
return State.Status;
|
||||
}
|
||||
|
||||
return Status;
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
RFC2348 - TFTP Blocksize Option
|
||||
RFC2349 - TFTP Timeout Interval and Transfer Size Options
|
||||
|
||||
Copyright (c) 2006 - 2007, Intel Corporation<BR>
|
||||
Copyright (c) 2006 - 2009, Intel Corporation<BR>
|
||||
All rights reserved. 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
|
||||
|
@ -149,8 +149,6 @@ struct _MTFTP4_PROTOCOL {
|
|||
UINT16 McastPort;
|
||||
BOOLEAN Master;
|
||||
UDP_IO_PORT *McastUdpPort;
|
||||
|
||||
MTFTP4_GETINFO_STATE GetInfoState;
|
||||
};
|
||||
|
||||
/**
|
||||
|
|
|
@ -14,9 +14,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
|||
|
||||
#include "PxeBcImpl.h"
|
||||
|
||||
VOID *TokenContext = NULL;
|
||||
|
||||
CHAR8 *mMtftpOptions[PXE_MTFTP_OPTION_MAXIMUM_INDEX] = {
|
||||
UINT8 *mMtftpOptions[PXE_MTFTP_OPTION_MAXIMUM_INDEX] = {
|
||||
"blksize",
|
||||
"timeout",
|
||||
"tsize",
|
||||
|
@ -55,7 +53,7 @@ PxeBcCheckPacket (
|
|||
EFI_PXE_BASE_CODE_CALLBACK_PROTOCOL *Callback;
|
||||
EFI_STATUS Status;
|
||||
|
||||
Private = (PXEBC_PRIVATE_DATA *) TokenContext;
|
||||
Private = (PXEBC_PRIVATE_DATA *) Token->Context;
|
||||
Callback = Private->PxeBcCallback;
|
||||
Status = EFI_SUCCESS;
|
||||
|
||||
|
@ -271,7 +269,7 @@ PxeBcTftpReadFile (
|
|||
Token.ModeStr = NULL;
|
||||
Token.OptionCount = OptCnt;
|
||||
Token.OptionList = ReqOpt;
|
||||
TokenContext = Private;
|
||||
Token.Context = Private;
|
||||
|
||||
if (DontUseBuffer) {
|
||||
Token.BufferSize = 0;
|
||||
|
@ -428,7 +426,7 @@ PxeBcTftpReadDirectory (
|
|||
Token.ModeStr = NULL;
|
||||
Token.OptionCount = OptCnt;
|
||||
Token.OptionList = ReqOpt;
|
||||
TokenContext = Private;
|
||||
Token.Context = Private;
|
||||
|
||||
if (DontUseBuffer) {
|
||||
Token.BufferSize = 0;
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/** @file
|
||||
EFI Multicast Trivial File Tranfer Protocol Definition
|
||||
|
||||
Copyright (c) 2006 - 2008, Intel Corporation
|
||||
Copyright (c) 2006 - 2009, Intel Corporation
|
||||
All rights reserved. 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
|
||||
|
@ -356,8 +356,8 @@ EFI_STATUS
|
|||
@param Packet Pointer to the OACK packet to be parsed.
|
||||
@param OptionCount Pointer to the number of options in following OptionList.
|
||||
@param OptionList Pointer to EFI_MTFTP4_OPTION storage. Call the EFI Boot
|
||||
Service FreePool() to release each option if they are not
|
||||
needed any more.
|
||||
Service FreePool() to release the OptionList if the options
|
||||
in this OptionList are not needed any more.
|
||||
|
||||
@retval EFI_SUCCESS The OACK packet was valid and the OptionCount and
|
||||
OptionList parameters have been updated.
|
||||
|
@ -540,13 +540,18 @@ struct _EFI_MTFTP4_TOKEN {
|
|||
///
|
||||
/// Size of the data buffer.
|
||||
///
|
||||
OUT UINT64 BufferSize;
|
||||
UINT64 BufferSize;
|
||||
///
|
||||
/// Pointer to the data buffer. Data that is downloaded from the
|
||||
/// MTFTPv4 server is stored here. Data that is uploaded to the
|
||||
/// MTFTPv4 server is read from here. Ignored if BufferSize is zero.
|
||||
///
|
||||
OUT VOID *Buffer;
|
||||
VOID *Buffer;
|
||||
///
|
||||
/// Pointer to the context that will be used by CheckPacket,
|
||||
/// TimeoutCallback and PacketNeeded.
|
||||
///
|
||||
VOID *Context;
|
||||
///
|
||||
/// Pointer to the callback function to check the contents of the received packet.
|
||||
///
|
||||
|
|
Loading…
Reference in New Issue