Refine soma code to make code run safely.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10877 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
@@ -70,7 +70,7 @@ IScsiInitControlSection (
|
||||
|
||||
Control->Header.StructureId = EFI_ACPI_ISCSI_BOOT_FIRMWARE_TABLE_CONTROL_STRUCTURE_ID;
|
||||
Control->Header.Version = EFI_ACPI_ISCSI_BOOT_FIRMWARE_TABLE_CONTROL_STRUCTURE_VERSION;
|
||||
Control->Header.Length = sizeof (EFI_ACPI_ISCSI_BOOT_FIRMWARE_TABLE_CONTROL_STRUCTURE);
|
||||
Control->Header.Length = (UINT16) sizeof (EFI_ACPI_ISCSI_BOOT_FIRMWARE_TABLE_CONTROL_STRUCTURE);
|
||||
|
||||
//
|
||||
// Each session occupies two offsets, one for the NIC section,
|
||||
@@ -144,7 +144,7 @@ IScsiFillInitiatorSection (
|
||||
|
||||
Initiator->Header.StructureId = EFI_ACPI_ISCSI_BOOT_FIRMWARE_TABLE_INITIATOR_STRUCTURE_ID;
|
||||
Initiator->Header.Version = EFI_ACPI_ISCSI_BOOT_FIRMWARE_TABLE_INITIATOR_STRUCTURE_VERSION;
|
||||
Initiator->Header.Length = sizeof (EFI_ACPI_ISCSI_BOOT_FIRMWARE_TABLE_INITIATOR_STRUCTURE);
|
||||
Initiator->Header.Length = (UINT16) sizeof (EFI_ACPI_ISCSI_BOOT_FIRMWARE_TABLE_INITIATOR_STRUCTURE);
|
||||
Initiator->Header.Flags = EFI_ACPI_ISCSI_BOOT_FIRMWARE_TABLE_INITIATOR_STRUCTURE_FLAG_BLOCK_VALID | EFI_ACPI_ISCSI_BOOT_FIRMWARE_TABLE_INITIATOR_STRUCTURE_FLAG_BOOT_SELECTED;
|
||||
|
||||
//
|
||||
@@ -305,7 +305,7 @@ IScsiFillNICAndTargetSections (
|
||||
|
||||
Nic->Header.StructureId = EFI_ACPI_ISCSI_BOOT_FIRMWARE_TABLE_NIC_STRUCTURE_ID;
|
||||
Nic->Header.Version = EFI_ACPI_ISCSI_BOOT_FIRMWARE_TABLE_NIC_STRUCTURE_VERSION;
|
||||
Nic->Header.Length = sizeof (EFI_ACPI_ISCSI_BOOT_FIRMWARE_TABLE_NIC_STRUCTURE);
|
||||
Nic->Header.Length = (UINT16) sizeof (EFI_ACPI_ISCSI_BOOT_FIRMWARE_TABLE_NIC_STRUCTURE);
|
||||
Nic->Header.Index = (UINT8) Index;
|
||||
Nic->Header.Flags = EFI_ACPI_ISCSI_BOOT_FIRMWARE_TABLE_NIC_STRUCTURE_FLAG_BLOCK_VALID |
|
||||
EFI_ACPI_ISCSI_BOOT_FIRMWARE_TABLE_NIC_STRUCTURE_FLAG_BOOT_SELECTED |
|
||||
@@ -351,7 +351,7 @@ IScsiFillNICAndTargetSections (
|
||||
|
||||
Target->Header.StructureId = EFI_ACPI_ISCSI_BOOT_FIRMWARE_TABLE_TARGET_STRUCTURE_ID;
|
||||
Target->Header.Version = EFI_ACPI_ISCSI_BOOT_FIRMWARE_TABLE_TARGET_STRUCTURE_VERSION;
|
||||
Target->Header.Length = sizeof (EFI_ACPI_ISCSI_BOOT_FIRMWARE_TABLE_TARGET_STRUCTURE);
|
||||
Target->Header.Length = (UINT16) sizeof (EFI_ACPI_ISCSI_BOOT_FIRMWARE_TABLE_TARGET_STRUCTURE);
|
||||
Target->Header.Index = (UINT8) Index;
|
||||
Target->Header.Flags = EFI_ACPI_ISCSI_BOOT_FIRMWARE_TABLE_TARGET_STRUCTURE_FLAG_BLOCK_VALID | EFI_ACPI_ISCSI_BOOT_FIRMWARE_TABLE_TARGET_STRUCTURE_FLAG_BOOT_SELECTED;
|
||||
Target->Port = SessionConfigData->NvData.TargetPort;
|
||||
|
@@ -84,8 +84,8 @@ PxeInit (
|
||||
Snp->Cdb.OpCode = PXE_OPCODE_INITIALIZE;
|
||||
Snp->Cdb.OpFlags = CableDetectFlag;
|
||||
|
||||
Snp->Cdb.CPBsize = sizeof (PXE_CPB_INITIALIZE);
|
||||
Snp->Cdb.DBsize = sizeof (PXE_DB_INITIALIZE);
|
||||
Snp->Cdb.CPBsize = (UINT16) sizeof (PXE_CPB_INITIALIZE);
|
||||
Snp->Cdb.DBsize = (UINT16) sizeof (PXE_DB_INITIALIZE);
|
||||
|
||||
Snp->Cdb.CPBaddr = (UINT64)(UINTN) Snp->Cpb;
|
||||
Snp->Cdb.DBaddr = (UINT64)(UINTN) Snp->Db;
|
||||
|
@@ -45,8 +45,8 @@ PxeIp2Mac (
|
||||
Db = Snp->Db;
|
||||
Snp->Cdb.OpCode = PXE_OPCODE_MCAST_IP_TO_MAC;
|
||||
Snp->Cdb.OpFlags = (UINT16) (IPv6 ? PXE_OPFLAGS_MCAST_IPV6_TO_MAC : PXE_OPFLAGS_MCAST_IPV4_TO_MAC);
|
||||
Snp->Cdb.CPBsize = sizeof (PXE_CPB_MCAST_IP_TO_MAC);
|
||||
Snp->Cdb.DBsize = sizeof (PXE_DB_MCAST_IP_TO_MAC);
|
||||
Snp->Cdb.CPBsize = (UINT16) sizeof (PXE_CPB_MCAST_IP_TO_MAC);
|
||||
Snp->Cdb.DBsize = (UINT16) sizeof (PXE_DB_MCAST_IP_TO_MAC);
|
||||
|
||||
Snp->Cdb.CPBaddr = (UINT64)(UINTN) Cpb;
|
||||
Snp->Cdb.DBaddr = (UINT64)(UINTN) Db;
|
||||
|
@@ -48,7 +48,7 @@ PxeNvDataRead (
|
||||
Snp->Cdb.CPBsize = PXE_CPBSIZE_NOT_USED;
|
||||
Snp->Cdb.CPBaddr = PXE_CPBADDR_NOT_USED;
|
||||
|
||||
Snp->Cdb.DBsize = sizeof (PXE_DB_NVDATA);
|
||||
Snp->Cdb.DBsize = (UINT16) sizeof (PXE_DB_NVDATA);
|
||||
Snp->Cdb.DBaddr = (UINT64)(UINTN) Db;
|
||||
|
||||
Snp->Cdb.StatCode = PXE_STATCODE_INITIALIZE;
|
||||
|
@@ -68,10 +68,10 @@ PxeReceive (
|
||||
Snp->Cdb.OpCode = PXE_OPCODE_RECEIVE;
|
||||
Snp->Cdb.OpFlags = PXE_OPFLAGS_NOT_USED;
|
||||
|
||||
Snp->Cdb.CPBsize = sizeof (PXE_CPB_RECEIVE);
|
||||
Snp->Cdb.CPBsize = (UINT16) sizeof (PXE_CPB_RECEIVE);
|
||||
Snp->Cdb.CPBaddr = (UINT64)(UINTN) Cpb;
|
||||
|
||||
Snp->Cdb.DBsize = sizeof (PXE_DB_RECEIVE);
|
||||
Snp->Cdb.DBsize = (UINT16) sizeof (PXE_DB_RECEIVE);
|
||||
Snp->Cdb.DBaddr = (UINT64)(UINTN) Db;
|
||||
|
||||
Snp->Cdb.StatCode = PXE_STATCODE_INITIALIZE;
|
||||
|
@@ -483,8 +483,8 @@ SimpleNetworkDriverStart (
|
||||
Snp->Cdb.CPBsize = PXE_CPBSIZE_NOT_USED;
|
||||
Snp->Cdb.CPBaddr = PXE_DBADDR_NOT_USED;
|
||||
|
||||
Snp->Cdb.DBsize = sizeof Snp->InitInfo;
|
||||
Snp->Cdb.DBaddr = (UINT64)(UINTN) &Snp->InitInfo;
|
||||
Snp->Cdb.DBsize = (UINT16) sizeof (Snp->InitInfo);
|
||||
Snp->Cdb.DBaddr = (UINT64)(UINTN) (&Snp->InitInfo);
|
||||
|
||||
Snp->Cdb.StatCode = PXE_STATCODE_INITIALIZE;
|
||||
Snp->Cdb.StatFlags = PXE_STATFLAGS_INITIALIZE;
|
||||
@@ -513,7 +513,7 @@ SimpleNetworkDriverStart (
|
||||
Snp->Cdb.CPBsize = PXE_CPBSIZE_NOT_USED;
|
||||
Snp->Cdb.CPBaddr = PXE_DBADDR_NOT_USED;
|
||||
|
||||
Snp->Cdb.DBsize = sizeof ConfigInfo;
|
||||
Snp->Cdb.DBsize = (UINT16) sizeof (ConfigInfo);
|
||||
Snp->Cdb.DBaddr = (UINT64)(UINTN) &ConfigInfo;
|
||||
|
||||
Snp->Cdb.StatCode = PXE_STATCODE_INITIALIZE;
|
||||
|
@@ -51,7 +51,7 @@ PxeStart (
|
||||
// a S/W UNDI.
|
||||
//
|
||||
if (Snp->IsSwUndi) {
|
||||
Snp->Cdb.CPBsize = sizeof (PXE_CPB_START_31);
|
||||
Snp->Cdb.CPBsize = (UINT16) sizeof (PXE_CPB_START_31);
|
||||
Snp->Cdb.CPBaddr = (UINT64)(UINTN) Cpb31;
|
||||
|
||||
Cpb31->Delay = (UINT64)(UINTN) &SnpUndi32CallbackDelay;
|
||||
|
@@ -39,7 +39,7 @@ PxeGetStnAddr (
|
||||
Snp->Cdb.CPBaddr = PXE_CPBADDR_NOT_USED;
|
||||
Snp->Cdb.CPBsize = PXE_CPBSIZE_NOT_USED;
|
||||
|
||||
Snp->Cdb.DBsize = sizeof (PXE_DB_STATION_ADDRESS);
|
||||
Snp->Cdb.DBsize = (UINT16) sizeof (PXE_DB_STATION_ADDRESS);
|
||||
Snp->Cdb.DBaddr = (UINT64)(UINTN) Db;
|
||||
|
||||
Snp->Cdb.StatCode = PXE_STATCODE_INITIALIZE;
|
||||
@@ -124,11 +124,11 @@ PxeSetStnAddr (
|
||||
//
|
||||
CopyMem (&Cpb->StationAddr, NewMacAddr, Snp->Mode.HwAddressSize);
|
||||
|
||||
Snp->Cdb.CPBsize = sizeof (PXE_CPB_STATION_ADDRESS);
|
||||
Snp->Cdb.CPBsize = (UINT16) sizeof (PXE_CPB_STATION_ADDRESS);
|
||||
Snp->Cdb.CPBaddr = (UINT64)(UINTN) Cpb;
|
||||
}
|
||||
|
||||
Snp->Cdb.DBsize = sizeof (PXE_DB_STATION_ADDRESS);
|
||||
Snp->Cdb.DBsize = (UINT16) sizeof (PXE_DB_STATION_ADDRESS);
|
||||
Snp->Cdb.DBaddr = (UINT64)(UINTN) Db;
|
||||
|
||||
Snp->Cdb.StatCode = PXE_STATCODE_INITIALIZE;
|
||||
|
@@ -133,7 +133,7 @@ SnpUndi32Statistics (
|
||||
Db = Snp->Db;
|
||||
} else {
|
||||
Snp->Cdb.OpFlags = PXE_OPFLAGS_STATISTICS_READ;
|
||||
Snp->Cdb.DBsize = sizeof (PXE_DB_STATISTICS);
|
||||
Snp->Cdb.DBsize = (UINT16) sizeof (PXE_DB_STATISTICS);
|
||||
Snp->Cdb.DBaddr = (UINT64)(UINTN) (Db = Snp->Db);
|
||||
}
|
||||
//
|
||||
|
@@ -162,7 +162,7 @@ PxeTransmit (
|
||||
|
||||
Snp->Cdb.OpFlags = PXE_OPFLAGS_TRANSMIT_WHOLE;
|
||||
|
||||
Snp->Cdb.CPBsize = sizeof (PXE_CPB_TRANSMIT);
|
||||
Snp->Cdb.CPBsize = (UINT16) sizeof (PXE_CPB_TRANSMIT);
|
||||
Snp->Cdb.CPBaddr = (UINT64)(UINTN) Cpb;
|
||||
|
||||
Snp->Cdb.OpCode = PXE_OPCODE_TRANSMIT;
|
||||
|
@@ -56,7 +56,7 @@ SnpWaitForPacketNotify (
|
||||
((SNP_DRIVER *) SnpPtr)->Cdb.OpFlags = 0;
|
||||
((SNP_DRIVER *) SnpPtr)->Cdb.CPBsize = PXE_CPBSIZE_NOT_USED;
|
||||
((SNP_DRIVER *) SnpPtr)->Cdb.CPBaddr = PXE_CPBADDR_NOT_USED;
|
||||
((SNP_DRIVER *) SnpPtr)->Cdb.DBsize = sizeof (UINT32) * 2;
|
||||
((SNP_DRIVER *) SnpPtr)->Cdb.DBsize = (UINT16) (sizeof (UINT32) * 2);
|
||||
((SNP_DRIVER *) SnpPtr)->Cdb.DBaddr = (UINT64)(UINTN) (((SNP_DRIVER *) SnpPtr)->Db);
|
||||
((SNP_DRIVER *) SnpPtr)->Cdb.StatCode = PXE_STATCODE_INITIALIZE;
|
||||
((SNP_DRIVER *) SnpPtr)->Cdb.StatFlags = PXE_STATFLAGS_INITIALIZE;
|
||||
|
@@ -677,6 +677,8 @@ Tcp4ServiceBindingCreateChild (
|
||||
*ChildHandle = Sock->SockHandle;
|
||||
}
|
||||
|
||||
mTcp4DefaultSockData.ProtoData = NULL;
|
||||
|
||||
gBS->RestoreTPL (OldTpl);
|
||||
return Status;
|
||||
}
|
||||
|
@@ -657,7 +657,7 @@ TcpResetConnection (
|
||||
Nhead->Ack = HTONL (Tcb->RcvNxt);
|
||||
Nhead->SrcPort = Tcb->LocalEnd.Port;
|
||||
Nhead->DstPort = Tcb->RemoteEnd.Port;
|
||||
Nhead->HeadLen = (sizeof (TCP_HEAD) >> 2);
|
||||
Nhead->HeadLen = (UINT8) (sizeof (TCP_HEAD) >> 2);
|
||||
Nhead->Res = 0;
|
||||
Nhead->Wnd = HTONS (0xFFFF);
|
||||
Nhead->Checksum = 0;
|
||||
|
@@ -1094,7 +1094,7 @@ TcpSendReset (
|
||||
|
||||
Nhead->SrcPort = Head->DstPort;
|
||||
Nhead->DstPort = Head->SrcPort;
|
||||
Nhead->HeadLen = (sizeof (TCP_HEAD) >> 2);
|
||||
Nhead->HeadLen = (UINT8) (sizeof (TCP_HEAD) >> 2);
|
||||
Nhead->Res = 0;
|
||||
Nhead->Wnd = HTONS (0xFFFF);
|
||||
Nhead->Checksum = 0;
|
||||
|
@@ -852,7 +852,7 @@ PxeBcDhcpCallBack (
|
||||
ZeroMem (DhcpHeader->ClientHwAddr, sizeof (EFI_GUID));
|
||||
}
|
||||
|
||||
DhcpHeader->HwAddrLen = sizeof (EFI_GUID);
|
||||
DhcpHeader->HwAddrLen = (UINT8) sizeof (EFI_GUID);
|
||||
}
|
||||
|
||||
if (Dhcp4Event == Dhcp4SendDiscover) {
|
||||
@@ -948,7 +948,7 @@ PxeBcBuildDhcpOptions (
|
||||
// Append max message size.
|
||||
//
|
||||
OptList[Index]->OpCode = PXEBC_DHCP4_TAG_MAXMSG;
|
||||
OptList[Index]->Length = sizeof (PXEBC_DHCP4_OPTION_MAX_MESG_SIZE);
|
||||
OptList[Index]->Length = (UINT8) sizeof (PXEBC_DHCP4_OPTION_MAX_MESG_SIZE);
|
||||
OptEnt.MaxMesgSize = (PXEBC_DHCP4_OPTION_MAX_MESG_SIZE *) OptList[Index]->Data;
|
||||
Value = NTOHS (PXEBC_DHCP4_MAX_PACKET_SIZE);
|
||||
CopyMem (&OptEnt.MaxMesgSize->Size, &Value, sizeof (UINT16));
|
||||
@@ -1003,7 +1003,7 @@ PxeBcBuildDhcpOptions (
|
||||
// Append UUID/Guid-based client identifier option
|
||||
//
|
||||
OptList[Index]->OpCode = PXEBC_PXE_DHCP4_TAG_UUID;
|
||||
OptList[Index]->Length = sizeof (PXEBC_DHCP4_OPTION_UUID);
|
||||
OptList[Index]->Length = (UINT8) sizeof (PXEBC_DHCP4_OPTION_UUID);
|
||||
OptEnt.Uuid = (PXEBC_DHCP4_OPTION_UUID *) OptList[Index]->Data;
|
||||
OptEnt.Uuid->Type = 0;
|
||||
Index++;
|
||||
@@ -1022,7 +1022,7 @@ PxeBcBuildDhcpOptions (
|
||||
// Append client network device interface option
|
||||
//
|
||||
OptList[Index]->OpCode = PXEBC_PXE_DHCP4_TAG_UNDI;
|
||||
OptList[Index]->Length = sizeof (PXEBC_DHCP4_OPTION_UNDI);
|
||||
OptList[Index]->Length = (UINT8) sizeof (PXEBC_DHCP4_OPTION_UNDI);
|
||||
OptEnt.Undi = (PXEBC_DHCP4_OPTION_UNDI *) OptList[Index]->Data;
|
||||
if (Private->Nii != NULL) {
|
||||
OptEnt.Undi->Type = Private->Nii->Type;
|
||||
@@ -1041,7 +1041,7 @@ PxeBcBuildDhcpOptions (
|
||||
// Append client system architecture option
|
||||
//
|
||||
OptList[Index]->OpCode = PXEBC_PXE_DHCP4_TAG_ARCH;
|
||||
OptList[Index]->Length = sizeof (PXEBC_DHCP4_OPTION_ARCH);
|
||||
OptList[Index]->Length = (UINT8) sizeof (PXEBC_DHCP4_OPTION_ARCH);
|
||||
OptEnt.Arch = (PXEBC_DHCP4_OPTION_ARCH *) OptList[Index]->Data;
|
||||
Value = HTONS (EFI_PXE_CLIENT_SYSTEM_ARCHITECTURE);
|
||||
CopyMem (&OptEnt.Arch->Type, &Value, sizeof (UINT16));
|
||||
@@ -1052,7 +1052,7 @@ PxeBcBuildDhcpOptions (
|
||||
// Append client system architecture option
|
||||
//
|
||||
OptList[Index]->OpCode = PXEBC_DHCP4_TAG_CLASS_ID;
|
||||
OptList[Index]->Length = sizeof (PXEBC_DHCP4_OPTION_CLID);
|
||||
OptList[Index]->Length = (UINT8) sizeof (PXEBC_DHCP4_OPTION_CLID);
|
||||
OptEnt.Clid = (PXEBC_DHCP4_OPTION_CLID *) OptList[Index]->Data;
|
||||
CopyMem (OptEnt.Clid, DEFAULT_CLASS_ID_DATA, sizeof (PXEBC_DHCP4_OPTION_CLID));
|
||||
CvtNum (EFI_PXE_CLIENT_SYSTEM_ARCHITECTURE, OptEnt.Clid->ArchitectureType, sizeof (OptEnt.Clid->ArchitectureType));
|
||||
@@ -1149,7 +1149,7 @@ PxeBcDiscvBootService (
|
||||
//
|
||||
// Add vendor option of PXE_BOOT_ITEM
|
||||
//
|
||||
VendorOptLen = (sizeof (EFI_DHCP4_PACKET_OPTION) - 1) * 2 + sizeof (PXEBC_OPTION_BOOT_ITEM) + 1;
|
||||
VendorOptLen = (UINT8) ((sizeof (EFI_DHCP4_PACKET_OPTION) - 1) * 2 + sizeof (PXEBC_OPTION_BOOT_ITEM) + 1);
|
||||
OptList[OptCount] = AllocatePool (VendorOptLen);
|
||||
if (OptList[OptCount] == NULL) {
|
||||
return EFI_OUT_OF_RESOURCES;
|
||||
@@ -1159,7 +1159,7 @@ PxeBcDiscvBootService (
|
||||
OptList[OptCount]->Length = (UINT8) (VendorOptLen - 2);
|
||||
PxeOpt = (EFI_DHCP4_PACKET_OPTION *) OptList[OptCount]->Data;
|
||||
PxeOpt->OpCode = PXEBC_VENDOR_TAG_BOOT_ITEM;
|
||||
PxeOpt->Length = sizeof (PXEBC_OPTION_BOOT_ITEM);
|
||||
PxeOpt->Length = (UINT8) sizeof (PXEBC_OPTION_BOOT_ITEM);
|
||||
PxeBootItem = (PXEBC_OPTION_BOOT_ITEM *) PxeOpt->Data;
|
||||
PxeBootItem->Type = HTONS (Type);
|
||||
PxeBootItem->Layer = HTONS (*Layer);
|
||||
@@ -1187,7 +1187,7 @@ PxeBcDiscvBootService (
|
||||
ZeroMem (DhcpHeader->ClientHwAddr, sizeof (EFI_GUID));
|
||||
}
|
||||
|
||||
DhcpHeader->HwAddrLen = sizeof (EFI_GUID);
|
||||
DhcpHeader->HwAddrLen = (UINT8) sizeof (EFI_GUID);
|
||||
}
|
||||
|
||||
Xid = NET_RANDOM (NetRandomInitSeed ());
|
||||
|
@@ -677,7 +677,7 @@ ON_EXIT:
|
||||
ZeroMem (&ArpConfigData, sizeof (EFI_ARP_CONFIG_DATA));
|
||||
|
||||
ArpConfigData.SwAddressType = 0x0800;
|
||||
ArpConfigData.SwAddressLength = sizeof (EFI_IPv4_ADDRESS);
|
||||
ArpConfigData.SwAddressLength = (UINT8) sizeof (EFI_IPv4_ADDRESS);
|
||||
ArpConfigData.StationAddress = &Private->StationIp.v4;
|
||||
|
||||
Private->Arp->Configure (Private->Arp, NULL);
|
||||
@@ -2263,7 +2263,7 @@ EfiPxeBcSetStationIP (
|
||||
ZeroMem (&ArpConfigData, sizeof (EFI_ARP_CONFIG_DATA));
|
||||
|
||||
ArpConfigData.SwAddressType = 0x0800;
|
||||
ArpConfigData.SwAddressLength = sizeof (EFI_IPv4_ADDRESS);
|
||||
ArpConfigData.SwAddressLength = (UINT8) sizeof (EFI_IPv4_ADDRESS);
|
||||
ArpConfigData.StationAddress = &Private->StationIp.v4;
|
||||
|
||||
Private->Arp->Configure (Private->Arp, NULL);
|
||||
|
Reference in New Issue
Block a user