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

View File

@ -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;

View File

@ -86,6 +86,12 @@ typedef struct _MTFTP4_SERVICE {
UDP_IO_PORT *ConnectUdp;
};
typedef struct {
EFI_MTFTP4_PACKET **Packet;
UINT32 *PacketLen;
EFI_STATUS Status;
} MTFTP4_GETINFO_STATE;
typedef struct _MTFTP4_PROTOCOL {
UINT32 Signature;
NET_LIST_ENTRY Link;
@ -140,13 +146,9 @@ typedef 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 (