remove member context from _EFI_MTFTP4_TOKEN structure.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4308 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
vanjeff 2007-11-20 06:06:18 +00:00
parent 36ee91ca36
commit 61066b8d74
2 changed files with 19 additions and 13 deletions

View File

@ -260,11 +260,13 @@ Mtftp4GetInfoCheckPacket (
IN EFI_MTFTP4_PACKET *Packet
)
{
MTFTP4_PROTOCOL *Instance;
MTFTP4_GETINFO_STATE *State;
EFI_STATUS Status;
UINT16 OpCode;
State = (MTFTP4_GETINFO_STATE *) Token->Context;
Instance = MTFTP4_PROTOCOL_FROM_THIS (This);
State = &Instance->GetInfoState;
OpCode = NTOHS (Packet->OpCode);
//
@ -335,7 +337,8 @@ EfiMtftp4GetInfo (
)
{
EFI_MTFTP4_TOKEN Token;
MTFTP4_GETINFO_STATE State;
MTFTP4_PROTOCOL *Instance;
MTFTP4_GETINFO_STATE *State;
EFI_STATUS Status;
if ((This == NULL) || (Filename == NULL) || (PacketLength == NULL) ||
@ -348,9 +351,11 @@ EfiMtftp4GetInfo (
}
*PacketLength = 0;
State.Packet = Packet;
State.PacketLen = PacketLength;
State.Status = EFI_SUCCESS;
Instance = MTFTP4_PROTOCOL_FROM_THIS (This);
State = &Instance->GetInfoState;
State->Packet = Packet;
State->PacketLen = PacketLength;
State->Status = EFI_SUCCESS;
//
// Fill in the Token to issue an synchronous ReadFile operation
@ -364,7 +369,6 @@ EfiMtftp4GetInfo (
Token.OptionList = OptionList;
Token.BufferSize = 0;
Token.Buffer = NULL;
Token.Context = &State;
Token.CheckPacket = Mtftp4GetInfoCheckPacket;
Token.TimeoutCallback = NULL;
Token.PacketNeeded = NULL;
@ -372,7 +376,7 @@ EfiMtftp4GetInfo (
Status = EfiMtftp4ReadFile (This, &Token);
if (EFI_ABORTED == Status) {
return State.Status;
return State->Status;
}
return Status;

View File

@ -86,6 +86,12 @@ struct _MTFTP4_SERVICE {
UDP_IO_PORT *ConnectUdp;
};
typedef struct {
EFI_MTFTP4_PACKET **Packet;
UINT32 *PacketLen;
EFI_STATUS Status;
} MTFTP4_GETINFO_STATE;
struct _MTFTP4_PROTOCOL {
UINT32 Signature;
NET_LIST_ENTRY Link;
@ -140,13 +146,9 @@ struct _MTFTP4_PROTOCOL {
UINT16 McastPort;
BOOLEAN Master;
UDP_IO_PORT *McastUdpPort;
};
typedef struct {
EFI_MTFTP4_PACKET **Packet;
UINT32 *PacketLen;
EFI_STATUS Status;
} MTFTP4_GETINFO_STATE;
MTFTP4_GETINFO_STATE GetInfoState;
};
VOID
Mtftp4CleanOperation (