1. Enable Mtftp4Dxe in MdeModulePkg.dsc

2. Changed CustomDecompressLib's default instance to BaseCustomDecompressLibNull.inf

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3561 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
vanjeff 2007-08-07 02:25:50 +00:00
parent 632a3a6c0b
commit a586770320
3 changed files with 22 additions and 15 deletions

View File

@ -42,7 +42,7 @@
TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf
UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf
PeCoffLoaderLib|MdeModulePkg/Library/PeiDxePeCoffLoaderLib/PeCoffLoaderLib.inf PeCoffLoaderLib|MdeModulePkg/Library/PeiDxePeCoffLoaderLib/PeCoffLoaderLib.inf
CustomDecompressLib|IntelFrameworkModulePkg/Library/BaseUefiTianoCustomDecompressLib/BaseUefiTianoCustomDecompressLib.inf CustomDecompressLib|MdePkg/Library/BaseCustomDecompressLibNull/BaseCustomDecompressLibNull.inf
[LibraryClasses.IA32] [LibraryClasses.IA32]
IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
@ -369,6 +369,7 @@
MdeModulePkg/Universal/Network/Ip4ConfigDxe/Ip4ConfigDxe.inf MdeModulePkg/Universal/Network/Ip4ConfigDxe/Ip4ConfigDxe.inf
MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Dxe.inf MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Dxe.inf
MdeModulePkg/Universal/Network/MnpDxe/MnpDxe.inf MdeModulePkg/Universal/Network/MnpDxe/MnpDxe.inf
MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Dxe.inf
MdeModulePkg/Universal/Network/PxeBcDxe/PxeBcDxe.inf MdeModulePkg/Universal/Network/PxeBcDxe/PxeBcDxe.inf
MdeModulePkg/Universal/Network/PxeDhcp4Dxe/PxeDhcp4Dxe.inf MdeModulePkg/Universal/Network/PxeDhcp4Dxe/PxeDhcp4Dxe.inf
MdeModulePkg/Universal/Network/SnpDxe/SnpDxe.inf MdeModulePkg/Universal/Network/SnpDxe/SnpDxe.inf

View File

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

View File

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