X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=MdeModulePkg%2FUniversal%2FNetwork%2FMtftp4Dxe%2FMtftp4Impl.c;h=2d3c4f53458bf3eea88fc871bf2506e85b5ed02a;hp=5bfd2538efede58dae4a1a746797e307edda6bf6;hb=a586770320e20f9a7cd9338de4255fe166c59d4c;hpb=632a3a6c0b5e16e8296afa4a54ed3d29ead81728 diff --git a/MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Impl.c b/MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Impl.c index 5bfd2538ef..2d3c4f5345 100644 --- a/MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Impl.c +++ b/MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Impl.c @@ -260,12 +260,14 @@ Mtftp4GetInfoCheckPacket ( IN EFI_MTFTP4_PACKET *Packet ) { + MTFTP4_PROTOCOL *Instance; MTFTP4_GETINFO_STATE *State; EFI_STATUS Status; UINT16 OpCode; - State = (MTFTP4_GETINFO_STATE *) Token->Context; - OpCode = NTOHS (Packet->OpCode); + Instance = MTFTP4_PROTOCOL_FROM_THIS (This); + State = &Instance->GetInfoState; + OpCode = NTOHS (Packet->OpCode); // // Set the GetInfo's return status according to the 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;