\r
#include "PxeBcImpl.h"\r
\r
-\r
/**\r
Display the string of the boot item.\r
\r
**/\r
VOID\r
PxeBcDisplayBootItem (\r
- IN UINT8 *Str,\r
- IN UINT8 Len\r
+ IN UINT8 *Str,\r
+ IN UINT8 Len\r
)\r
{\r
- UINT8 Tmp;\r
+ UINT8 Tmp;\r
\r
//\r
// Cut off the chars behind 70th.\r
//\r
- Len = (UINT8) MIN (PXEBC_DISPLAY_MAX_LINE, Len);\r
- Tmp = Str[Len];\r
- Str[Len] = 0;\r
+ Len = (UINT8)MIN (PXEBC_DISPLAY_MAX_LINE, Len);\r
+ Tmp = Str[Len];\r
+ Str[Len] = 0;\r
AsciiPrint ("%a \n", Str);\r
\r
//\r
// Restore the original 70th char.\r
//\r
- Str[Len] = Tmp;\r
+ Str[Len] = Tmp;\r
}\r
\r
-\r
/**\r
Select and maintain the boot prompt if needed.\r
\r
**/\r
EFI_STATUS\r
PxeBcSelectBootPrompt (\r
- IN PXEBC_PRIVATE_DATA *Private\r
+ IN PXEBC_PRIVATE_DATA *Private\r
)\r
{\r
- PXEBC_DHCP_PACKET_CACHE *Cache;\r
- PXEBC_VENDOR_OPTION *VendorOpt;\r
- EFI_PXE_BASE_CODE_MODE *Mode;\r
- EFI_EVENT TimeoutEvent;\r
- EFI_EVENT DescendEvent;\r
- EFI_INPUT_KEY InputKey;\r
- EFI_STATUS Status;\r
- UINT32 OfferType;\r
- UINT8 Timeout;\r
- UINT8 *Prompt;\r
- UINT8 PromptLen;\r
- INT32 SecCol;\r
- INT32 SecRow;\r
+ PXEBC_DHCP_PACKET_CACHE *Cache;\r
+ PXEBC_VENDOR_OPTION *VendorOpt;\r
+ EFI_PXE_BASE_CODE_MODE *Mode;\r
+ EFI_EVENT TimeoutEvent;\r
+ EFI_EVENT DescendEvent;\r
+ EFI_INPUT_KEY InputKey;\r
+ EFI_STATUS Status;\r
+ UINT32 OfferType;\r
+ UINT8 Timeout;\r
+ UINT8 *Prompt;\r
+ UINT8 PromptLen;\r
+ INT32 SecCol;\r
+ INT32 SecRow;\r
\r
TimeoutEvent = NULL;\r
DescendEvent = NULL;\r
//\r
// Only DhcpPxe10 and ProxyPxe10 offer needs boot prompt.\r
//\r
- if (OfferType != PxeOfferTypeProxyPxe10 && OfferType != PxeOfferTypeDhcpPxe10) {\r
+ if ((OfferType != PxeOfferTypeProxyPxe10) && (OfferType != PxeOfferTypeDhcpPxe10)) {\r
return EFI_NOT_FOUND;\r
}\r
\r
// - a boot file name has been presented in the initial DHCP or ProxyDHCP offer packet.\r
//\r
if (IS_DISABLE_PROMPT_MENU (VendorOpt->DiscoverCtrl) &&\r
- Cache->Dhcp4.OptList[PXEBC_DHCP4_TAG_INDEX_BOOTFILE] != NULL) {\r
+ (Cache->Dhcp4.OptList[PXEBC_DHCP4_TAG_INDEX_BOOTFILE] != NULL))\r
+ {\r
return EFI_ABORTED;\r
}\r
\r
\r
Timeout = VendorOpt->MenuPrompt->Timeout;\r
Prompt = VendorOpt->MenuPrompt->Prompt;\r
- PromptLen = (UINT8) (VendorOpt->MenuPromptLen - 1);\r
+ PromptLen = (UINT8)(VendorOpt->MenuPromptLen - 1);\r
\r
//\r
// The valid scope of Timeout refers to PXE2.1 spec.\r
if (Timeout == 0) {\r
return EFI_TIMEOUT;\r
}\r
+\r
if (Timeout == 255) {\r
return EFI_SUCCESS;\r
}\r
gST->ConOut->SetCursorPosition (gST->ConOut, SecCol + PromptLen, SecRow);\r
AsciiPrint ("(%d) ", Timeout--);\r
}\r
+\r
if (gST->ConIn->ReadKeyStroke (gST->ConIn, &InputKey) == EFI_NOT_READY) {\r
gBS->Stall (10 * TICKS_PER_MS);\r
continue;\r
}\r
+\r
//\r
// Parse the input key by user.\r
// If <F8> or <Ctrl> + <M> is pressed, return success to display the boot menu.\r
//\r
if (InputKey.ScanCode == 0) {\r
-\r
switch (InputKey.UnicodeChar) {\r
+ case CTRL ('c'):\r
+ Status = EFI_ABORTED;\r
+ break;\r
\r
- case CTRL ('c'):\r
- Status = EFI_ABORTED;\r
- break;\r
-\r
- case CTRL ('m'):\r
- case 'm':\r
- case 'M':\r
- Status = EFI_SUCCESS;\r
- break;\r
+ case CTRL ('m'):\r
+ case 'm':\r
+ case 'M':\r
+ Status = EFI_SUCCESS;\r
+ break;\r
\r
- default:\r
- continue;\r
+ default:\r
+ continue;\r
}\r
-\r
} else {\r
-\r
switch (InputKey.ScanCode) {\r
+ case SCAN_F8:\r
+ Status = EFI_SUCCESS;\r
+ break;\r
\r
- case SCAN_F8:\r
- Status = EFI_SUCCESS;\r
- break;\r
-\r
- case SCAN_ESC:\r
- Status = EFI_ABORTED;\r
- break;\r
+ case SCAN_ESC:\r
+ Status = EFI_ABORTED;\r
+ break;\r
\r
- default:\r
- continue;\r
+ default:\r
+ continue;\r
}\r
}\r
\r
//\r
// Reset the cursor on the screen.\r
//\r
- gST->ConOut->SetCursorPosition (gST->ConOut, 0 , SecRow + 1);\r
+ gST->ConOut->SetCursorPosition (gST->ConOut, 0, SecRow + 1);\r
\r
ON_EXIT:\r
if (DescendEvent != NULL) {\r
gBS->CloseEvent (DescendEvent);\r
}\r
+\r
if (TimeoutEvent != NULL) {\r
gBS->CloseEvent (TimeoutEvent);\r
}\r
return Status;\r
}\r
\r
-\r
/**\r
Select the boot menu by user's input.\r
\r
**/\r
EFI_STATUS\r
PxeBcSelectBootMenu (\r
- IN PXEBC_PRIVATE_DATA *Private,\r
- OUT UINT16 *Type,\r
- IN BOOLEAN UseDefaultItem\r
+ IN PXEBC_PRIVATE_DATA *Private,\r
+ OUT UINT16 *Type,\r
+ IN BOOLEAN UseDefaultItem\r
)\r
{\r
- EFI_PXE_BASE_CODE_MODE *Mode;\r
- PXEBC_DHCP_PACKET_CACHE *Cache;\r
- PXEBC_VENDOR_OPTION *VendorOpt;\r
- EFI_INPUT_KEY InputKey;\r
- UINT32 OfferType;\r
- UINT8 MenuSize;\r
- UINT8 MenuNum;\r
- INT32 TopRow;\r
- UINT16 Select;\r
- UINT16 LastSelect;\r
- UINT8 Index;\r
- BOOLEAN Finish;\r
- CHAR8 Blank[PXEBC_DISPLAY_MAX_LINE];\r
- PXEBC_BOOT_MENU_ENTRY *MenuItem;\r
- PXEBC_BOOT_MENU_ENTRY *MenuArray[PXEBC_MENU_MAX_NUM];\r
+ EFI_PXE_BASE_CODE_MODE *Mode;\r
+ PXEBC_DHCP_PACKET_CACHE *Cache;\r
+ PXEBC_VENDOR_OPTION *VendorOpt;\r
+ EFI_INPUT_KEY InputKey;\r
+ UINT32 OfferType;\r
+ UINT8 MenuSize;\r
+ UINT8 MenuNum;\r
+ INT32 TopRow;\r
+ UINT16 Select;\r
+ UINT16 LastSelect;\r
+ UINT8 Index;\r
+ BOOLEAN Finish;\r
+ CHAR8 Blank[PXEBC_DISPLAY_MAX_LINE];\r
+ PXEBC_BOOT_MENU_ENTRY *MenuItem;\r
+ PXEBC_BOOT_MENU_ENTRY *MenuArray[PXEBC_MENU_MAX_NUM];\r
\r
Finish = FALSE;\r
Select = 0;\r
//\r
// Display the boot menu on the screen.\r
//\r
- SetMem (Blank, sizeof(Blank), ' ');\r
+ SetMem (Blank, sizeof (Blank), ' ');\r
\r
- MenuSize = VendorOpt->BootMenuLen;\r
- MenuItem = VendorOpt->BootMenu;\r
+ MenuSize = VendorOpt->BootMenuLen;\r
+ MenuItem = VendorOpt->BootMenu;\r
\r
if (MenuSize == 0) {\r
return EFI_DEVICE_ERROR;\r
\r
while (MenuSize > 0 && Index < PXEBC_MENU_MAX_NUM) {\r
ASSERT (MenuItem != NULL);\r
- MenuArray[Index] = MenuItem;\r
- MenuSize = (UINT8) (MenuSize - (MenuItem->DescLen + 3));\r
- MenuItem = (PXEBC_BOOT_MENU_ENTRY *) ((UINT8 *) MenuItem + MenuItem->DescLen + 3);\r
+ MenuArray[Index] = MenuItem;\r
+ MenuSize = (UINT8)(MenuSize - (MenuItem->DescLen + 3));\r
+ MenuItem = (PXEBC_BOOT_MENU_ENTRY *)((UINT8 *)MenuItem + MenuItem->DescLen + 3);\r
Index++;\r
}\r
\r
\r
if (InputKey.ScanCode == 0) {\r
switch (InputKey.UnicodeChar) {\r
- case CTRL ('c'):\r
- InputKey.ScanCode = SCAN_ESC;\r
- break;\r
+ case CTRL ('c'):\r
+ InputKey.ScanCode = SCAN_ESC;\r
+ break;\r
\r
- case CTRL ('j'): /* linefeed */\r
- case CTRL ('m'): /* return */\r
- Finish = TRUE;\r
- break;\r
+ case CTRL ('j'): /* linefeed */\r
+ case CTRL ('m'): /* return */\r
+ Finish = TRUE;\r
+ break;\r
\r
- case CTRL ('i'): /* tab */\r
- case ' ':\r
- case 'd':\r
- case 'D':\r
- InputKey.ScanCode = SCAN_DOWN;\r
- break;\r
+ case CTRL ('i'): /* tab */\r
+ case ' ':\r
+ case 'd':\r
+ case 'D':\r
+ InputKey.ScanCode = SCAN_DOWN;\r
+ break;\r
\r
- case CTRL ('h'): /* backspace */\r
- case 'u':\r
- case 'U':\r
- InputKey.ScanCode = SCAN_UP;\r
- break;\r
+ case CTRL ('h'): /* backspace */\r
+ case 'u':\r
+ case 'U':\r
+ InputKey.ScanCode = SCAN_UP;\r
+ break;\r
\r
- default:\r
- InputKey.ScanCode = 0;\r
+ default:\r
+ InputKey.ScanCode = 0;\r
}\r
}\r
\r
switch (InputKey.ScanCode) {\r
- case SCAN_LEFT:\r
- case SCAN_UP:\r
- if (Select != 0) {\r
- Select--;\r
- }\r
- break;\r
+ case SCAN_LEFT:\r
+ case SCAN_UP:\r
+ if (Select != 0) {\r
+ Select--;\r
+ }\r
\r
- case SCAN_DOWN:\r
- case SCAN_RIGHT:\r
- if (++Select == MenuNum) {\r
- Select--;\r
- }\r
- break;\r
+ break;\r
\r
- case SCAN_PAGE_UP:\r
- case SCAN_HOME:\r
- Select = 0;\r
- break;\r
+ case SCAN_DOWN:\r
+ case SCAN_RIGHT:\r
+ if (++Select == MenuNum) {\r
+ Select--;\r
+ }\r
\r
- case SCAN_PAGE_DOWN:\r
- case SCAN_END:\r
- Select = (UINT16) (MenuNum - 1);\r
- break;\r
+ break;\r
\r
- case SCAN_ESC:\r
- return EFI_ABORTED;\r
+ case SCAN_PAGE_UP:\r
+ case SCAN_HOME:\r
+ Select = 0;\r
+ break;\r
+\r
+ case SCAN_PAGE_DOWN:\r
+ case SCAN_END:\r
+ Select = (UINT16)(MenuNum - 1);\r
+ break;\r
+\r
+ case SCAN_ESC:\r
+ return EFI_ABORTED;\r
}\r
\r
//\r
return EFI_SUCCESS;\r
}\r
\r
-\r
/**\r
Parse out the boot information from the last Dhcp4 reply packet.\r
\r
**/\r
EFI_STATUS\r
PxeBcDhcp4BootInfo (\r
- IN OUT PXEBC_PRIVATE_DATA *Private,\r
- OUT UINT64 *BufferSize\r
+ IN OUT PXEBC_PRIVATE_DATA *Private,\r
+ OUT UINT64 *BufferSize\r
)\r
{\r
EFI_PXE_BASE_CODE_PROTOCOL *PxeBc;\r
VendorOpt = &Cache4->VendorOpt;\r
if (IS_DISABLE_PROMPT_MENU (VendorOpt->DiscoverCtrl) && IS_VALID_BOOT_SERVERS (VendorOpt->BitMap)) {\r
Entry = VendorOpt->BootSvr;\r
- if (VendorOpt->BootSvrLen >= sizeof (PXEBC_BOOT_SVR_ENTRY) && Entry->IpCnt > 0) {\r
+ if ((VendorOpt->BootSvrLen >= sizeof (PXEBC_BOOT_SVR_ENTRY)) && (Entry->IpCnt > 0)) {\r
CopyMem (\r
&Private->ServerIp,\r
&Entry->IpAddr[0],\r
);\r
}\r
}\r
+\r
if (Private->ServerIp.Addr[0] == 0) {\r
//\r
// ServerIp.Addr[0] equals zero means we failed to get IP address from boot server list.\r
sizeof (EFI_IPv4_ADDRESS)\r
);\r
}\r
+\r
if (Private->ServerIp.Addr[0] == 0) {\r
//\r
// Still failed , use the IP address from option 54.\r
// Parse the boot file size by option.\r
//\r
CopyMem (&Value, Cache4->OptList[PXEBC_DHCP4_TAG_INDEX_BOOTFILE_LEN]->Data, sizeof (Value));\r
- Value = NTOHS (Value);\r
+ Value = NTOHS (Value);\r
//\r
// The field of boot file size is 512 bytes in unit.\r
//\r
//\r
// Save the value of boot file size.\r
//\r
- Private->BootFileSize = (UINTN) *BufferSize;\r
+ Private->BootFileSize = (UINTN)*BufferSize;\r
\r
//\r
// Display all the information: boot server address, boot file name and boot file size.\r
return Status;\r
}\r
\r
-\r
/**\r
Parse out the boot information from the last Dhcp6 reply packet.\r
\r
**/\r
EFI_STATUS\r
PxeBcDhcp6BootInfo (\r
- IN OUT PXEBC_PRIVATE_DATA *Private,\r
- OUT UINT64 *BufferSize\r
+ IN OUT PXEBC_PRIVATE_DATA *Private,\r
+ OUT UINT64 *BufferSize\r
)\r
{\r
EFI_PXE_BASE_CODE_PROTOCOL *PxeBc;\r
return Status;\r
}\r
\r
-\r
//\r
// Parse (m)tftp server ip address and bootfile name.\r
//\r
Private,\r
&Private->BootFileName,\r
&Private->ServerIp.v6,\r
- (CHAR8 *) (Cache6->OptList[PXEBC_DHCP6_IDX_BOOT_FILE_URL]->Data),\r
+ (CHAR8 *)(Cache6->OptList[PXEBC_DHCP6_IDX_BOOT_FILE_URL]->Data),\r
NTOHS (Cache6->OptList[PXEBC_DHCP6_IDX_BOOT_FILE_URL]->OpLen)\r
);\r
if (EFI_ERROR (Status)) {\r
//\r
// Parse it out if have the boot file parameter option.\r
//\r
- Status = PxeBcExtractBootFileParam ((CHAR8 *) Cache6->OptList[PXEBC_DHCP6_IDX_BOOT_FILE_PARAM]->Data, &Value);\r
+ Status = PxeBcExtractBootFileParam ((CHAR8 *)Cache6->OptList[PXEBC_DHCP6_IDX_BOOT_FILE_PARAM]->Data, &Value);\r
if (EFI_ERROR (Status)) {\r
return Status;\r
}\r
+\r
//\r
// The field of boot file size is 512 bytes in unit.\r
//\r
//\r
// Save the value of boot file size.\r
//\r
- Private->BootFileSize = (UINTN) *BufferSize;\r
+ Private->BootFileSize = (UINTN)*BufferSize;\r
\r
//\r
// Display all the information: boot server address, boot file name and boot file size.\r
return Status;\r
}\r
\r
-\r
/**\r
Extract the discover information and boot server entry from the\r
cached packets if unspecified.\r
IN PXEBC_PRIVATE_DATA *Private,\r
IN UINT16 Type,\r
IN OUT EFI_PXE_BASE_CODE_DISCOVER_INFO **DiscoverInfo,\r
- OUT PXEBC_BOOT_SVR_ENTRY **BootEntry,\r
- OUT EFI_PXE_BASE_CODE_SRVLIST **SrvList\r
+ OUT PXEBC_BOOT_SVR_ENTRY **BootEntry,\r
+ OUT EFI_PXE_BASE_CODE_SRVLIST **SrvList\r
)\r
{\r
- EFI_PXE_BASE_CODE_MODE *Mode;\r
- PXEBC_DHCP4_PACKET_CACHE *Cache4;\r
- PXEBC_VENDOR_OPTION *VendorOpt;\r
- PXEBC_BOOT_SVR_ENTRY *Entry;\r
- BOOLEAN IsFound;\r
- EFI_PXE_BASE_CODE_DISCOVER_INFO *Info;\r
- UINT16 Index;\r
+ EFI_PXE_BASE_CODE_MODE *Mode;\r
+ PXEBC_DHCP4_PACKET_CACHE *Cache4;\r
+ PXEBC_VENDOR_OPTION *VendorOpt;\r
+ PXEBC_BOOT_SVR_ENTRY *Entry;\r
+ BOOLEAN IsFound;\r
+ EFI_PXE_BASE_CODE_DISCOVER_INFO *Info;\r
+ UINT16 Index;\r
\r
Mode = Private->PxeBc.Mode;\r
Info = *DiscoverInfo;\r
//\r
CopyMem (&Info->SrvList[0].IpAddr, &Private->ServerIp, sizeof (EFI_IP_ADDRESS));\r
\r
- *SrvList = Info->SrvList;\r
+ *SrvList = Info->SrvList;\r
} else {\r
Entry = NULL;\r
IsFound = FALSE;\r
//\r
Info->UseMCast = (BOOLEAN) !IS_DISABLE_MCAST_DISCOVER (VendorOpt->DiscoverCtrl);\r
Info->UseBCast = (BOOLEAN) !IS_DISABLE_BCAST_DISCOVER (VendorOpt->DiscoverCtrl);\r
- Info->MustUseList = (BOOLEAN) IS_ENABLE_USE_SERVER_LIST (VendorOpt->DiscoverCtrl);\r
- Info->UseUCast = (BOOLEAN) IS_VALID_BOOT_SERVERS (VendorOpt->BitMap);\r
+ Info->MustUseList = (BOOLEAN)IS_ENABLE_USE_SERVER_LIST (VendorOpt->DiscoverCtrl);\r
+ Info->UseUCast = (BOOLEAN)IS_VALID_BOOT_SERVERS (VendorOpt->BitMap);\r
\r
if (Info->UseMCast) {\r
//\r
if (Info->UseUCast) {\r
Entry = VendorOpt->BootSvr;\r
\r
- while (((UINT8) (Entry - VendorOpt->BootSvr)) < VendorOpt->BootSvrLen) {\r
+ while (((UINT8)(Entry - VendorOpt->BootSvr)) < VendorOpt->BootSvrLen) {\r
if (Entry->Type == HTONS (Type)) {\r
IsFound = TRUE;\r
break;\r
}\r
+\r
Entry = GET_NEXT_BOOT_SVR_ENTRY (Entry);\r
}\r
\r
if (*DiscoverInfo == NULL) {\r
return EFI_OUT_OF_RESOURCES;\r
}\r
+\r
CopyMem (*DiscoverInfo, Info, sizeof (*Info));\r
Info = *DiscoverInfo;\r
}\r
for (Index = 0; Index < Info->IpCnt; Index++) {\r
CopyMem (&Info->SrvList[Index].IpAddr, &Entry->IpAddr[Index], sizeof (EFI_IPv4_ADDRESS));\r
Info->SrvList[Index].AcceptAnyResponse = !Info->MustUseList;\r
- Info->SrvList[Index].Type = NTOHS (Entry->Type);\r
+ Info->SrvList[Index].Type = NTOHS (Entry->Type);\r
}\r
}\r
\r
return EFI_SUCCESS;\r
}\r
\r
-\r
/**\r
Build the discover packet and send out for boot server.\r
\r
**/\r
EFI_STATUS\r
PxeBcDiscoverBootServer (\r
- IN PXEBC_PRIVATE_DATA *Private,\r
- IN UINT16 Type,\r
- IN UINT16 *Layer,\r
- IN BOOLEAN UseBis,\r
- IN EFI_IP_ADDRESS *DestIp,\r
- IN UINT16 IpCount,\r
- IN EFI_PXE_BASE_CODE_SRVLIST *SrvList\r
+ IN PXEBC_PRIVATE_DATA *Private,\r
+ IN UINT16 Type,\r
+ IN UINT16 *Layer,\r
+ IN BOOLEAN UseBis,\r
+ IN EFI_IP_ADDRESS *DestIp,\r
+ IN UINT16 IpCount,\r
+ IN EFI_PXE_BASE_CODE_SRVLIST *SrvList\r
)\r
{\r
if (Private->PxeBc.Mode->UsingIpv6) {\r
}\r
}\r
\r
-\r
/**\r
Discover all the boot information for boot file.\r
\r
**/\r
EFI_STATUS\r
PxeBcDiscoverBootFile (\r
- IN OUT PXEBC_PRIVATE_DATA *Private,\r
- OUT UINT64 *BufferSize\r
+ IN OUT PXEBC_PRIVATE_DATA *Private,\r
+ OUT UINT64 *BufferSize\r
)\r
{\r
EFI_PXE_BASE_CODE_PROTOCOL *PxeBc;\r
}\r
\r
if (!EFI_ERROR (Status)) {\r
-\r
if (Type == EFI_PXE_BASE_CODE_BOOT_TYPE_BOOTSTRAP) {\r
//\r
// Local boot(PXE bootstrap server) need abort\r
// Start to discover the boot server to get (m)tftp server ip address, bootfile\r
// name and bootfile size.\r
//\r
- UseBis = (BOOLEAN) (Mode->BisSupported && Mode->BisDetected);\r
+ UseBis = (BOOLEAN)(Mode->BisSupported && Mode->BisDetected);\r
Status = PxeBc->Discover (PxeBc, Type, &Layer, UseBis, NULL);\r
if (EFI_ERROR (Status)) {\r
return Status;\r
Private->PxeReply.Dhcp4.Packet.Ack.Length\r
);\r
}\r
+\r
Mode->ProxyOfferReceived = TRUE;\r
}\r
}\r
return Status;\r
}\r
\r
-\r
/**\r
Install PxeBaseCodeCallbackProtocol if not installed before.\r
\r
**/\r
EFI_STATUS\r
PxeBcInstallCallback (\r
- IN OUT PXEBC_PRIVATE_DATA *Private,\r
- OUT BOOLEAN *NewMakeCallback\r
+ IN OUT PXEBC_PRIVATE_DATA *Private,\r
+ OUT BOOLEAN *NewMakeCallback\r
)\r
{\r
EFI_PXE_BASE_CODE_PROTOCOL *PxeBc;\r
Status = gBS->HandleProtocol (\r
Private->Mode.UsingIpv6 ? Private->Ip6Nic->Controller : Private->Ip4Nic->Controller,\r
&gEfiPxeBaseCodeCallbackProtocolGuid,\r
- (VOID **) &Private->PxeBcCallback\r
+ (VOID **)&Private->PxeBcCallback\r
);\r
if (Status == EFI_UNSUPPORTED) {\r
-\r
CopyMem (\r
&Private->LoadFileCallback,\r
&gPxeBcCallBackTemplate,\r
&Private->LoadFileCallback\r
);\r
\r
- (*NewMakeCallback) = (BOOLEAN) (Status == EFI_SUCCESS);\r
+ (*NewMakeCallback) = (BOOLEAN)(Status == EFI_SUCCESS);\r
\r
Status = PxeBc->SetParameters (PxeBc, NULL, NULL, NULL, NULL, NewMakeCallback);\r
if (EFI_ERROR (Status)) {\r
return EFI_SUCCESS;\r
}\r
\r
-\r
/**\r
Uninstall PxeBaseCodeCallbackProtocol.\r
\r
**/\r
VOID\r
PxeBcUninstallCallback (\r
- IN PXEBC_PRIVATE_DATA *Private,\r
- IN BOOLEAN NewMakeCallback\r
+ IN PXEBC_PRIVATE_DATA *Private,\r
+ IN BOOLEAN NewMakeCallback\r
)\r
{\r
- EFI_PXE_BASE_CODE_PROTOCOL *PxeBc;\r
+ EFI_PXE_BASE_CODE_PROTOCOL *PxeBc;\r
\r
PxeBc = &Private->PxeBc;\r
\r
if (NewMakeCallback) {\r
-\r
NewMakeCallback = FALSE;\r
\r
PxeBc->SetParameters (PxeBc, NULL, NULL, NULL, NULL, &NewMakeCallback);\r
\r
gBS->UninstallProtocolInterface (\r
- Private->Mode.UsingIpv6 ? Private->Ip6Nic->Controller : Private->Ip4Nic->Controller,\r
- &gEfiPxeBaseCodeCallbackProtocolGuid,\r
- &Private->LoadFileCallback\r
- );\r
+ Private->Mode.UsingIpv6 ? Private->Ip6Nic->Controller : Private->Ip4Nic->Controller,\r
+ &gEfiPxeBaseCodeCallbackProtocolGuid,\r
+ &Private->LoadFileCallback\r
+ );\r
}\r
}\r
\r
-\r
/**\r
Download one of boot file in the list, and it's special for IPv6.\r
\r
**/\r
EFI_STATUS\r
PxeBcReadBootFileList (\r
- IN PXEBC_PRIVATE_DATA *Private,\r
- IN OUT UINT64 *BufferSize,\r
- IN VOID *Buffer OPTIONAL\r
+ IN PXEBC_PRIVATE_DATA *Private,\r
+ IN OUT UINT64 *BufferSize,\r
+ IN VOID *Buffer OPTIONAL\r
)\r
{\r
- EFI_STATUS Status;\r
- EFI_PXE_BASE_CODE_PROTOCOL *PxeBc;\r
+ EFI_STATUS Status;\r
+ EFI_PXE_BASE_CODE_PROTOCOL *PxeBc;\r
\r
- PxeBc = &Private->PxeBc;\r
+ PxeBc = &Private->PxeBc;\r
\r
//\r
// Try to download the boot file if everything is ready.\r
NULL,\r
FALSE\r
);\r
-\r
-\r
} else {\r
- Status = EFI_BUFFER_TOO_SMALL;\r
+ Status = EFI_BUFFER_TOO_SMALL;\r
}\r
\r
return Status;\r
}\r
\r
-\r
/**\r
Load boot file into user buffer.\r
\r
**/\r
EFI_STATUS\r
PxeBcLoadBootFile (\r
- IN PXEBC_PRIVATE_DATA *Private,\r
- IN OUT UINTN *BufferSize,\r
- IN VOID *Buffer OPTIONAL\r
+ IN PXEBC_PRIVATE_DATA *Private,\r
+ IN OUT UINTN *BufferSize,\r
+ IN VOID *Buffer OPTIONAL\r
)\r
{\r
- BOOLEAN NewMakeCallback;\r
- UINT64 RequiredSize;\r
- UINT64 CurrentSize;\r
- EFI_STATUS Status;\r
- EFI_PXE_BASE_CODE_PROTOCOL *PxeBc;\r
- EFI_PXE_BASE_CODE_MODE *PxeBcMode;\r
+ BOOLEAN NewMakeCallback;\r
+ UINT64 RequiredSize;\r
+ UINT64 CurrentSize;\r
+ EFI_STATUS Status;\r
+ EFI_PXE_BASE_CODE_PROTOCOL *PxeBc;\r
+ EFI_PXE_BASE_CODE_MODE *PxeBcMode;\r
\r
NewMakeCallback = FALSE;\r
PxeBc = &Private->PxeBc;\r
// Install pxebc callback protocol if hasn't been installed yet.\r
//\r
Status = PxeBcInstallCallback (Private, &NewMakeCallback);\r
- if (EFI_ERROR(Status)) {\r
+ if (EFI_ERROR (Status)) {\r
return Status;\r
}\r
\r
//\r
// Get the right buffer size of the bootfile required.\r
//\r
- if (CurrentSize < RequiredSize || Buffer == NULL) {\r
+ if ((CurrentSize < RequiredSize) || (Buffer == NULL)) {\r
//\r
// It's buffer too small if the size of user buffer is smaller than the required.\r
//\r
Status = EFI_BUFFER_TOO_SMALL;\r
goto ON_EXIT;\r
}\r
+\r
CurrentSize = RequiredSize;\r
- } else if (RequiredSize == 0 && PxeBcMode->UsingIpv6) {\r
+ } else if ((RequiredSize == 0) && PxeBcMode->UsingIpv6) {\r
//\r
// Try to download another bootfile in list if failed to get the filesize of the last one.\r
// It's special for the case of IPv6.\r
Status = PxeBcReadBootFileList (Private, &CurrentSize, Buffer);\r
goto ON_EXIT;\r
}\r
- } else if (CurrentSize < Private->BootFileSize || Buffer == NULL ) {\r
+ } else if ((CurrentSize < Private->BootFileSize) || (Buffer == NULL)) {\r
//\r
// It's buffer too small if the size of user buffer is smaller than the required.\r
//\r
}\r
\r
ON_EXIT:\r
- *BufferSize = (UINTN) CurrentSize;\r
- PxeBcUninstallCallback(Private, NewMakeCallback);\r
+ *BufferSize = (UINTN)CurrentSize;\r
+ PxeBcUninstallCallback (Private, NewMakeCallback);\r
\r
if (Status == EFI_SUCCESS) {\r
AsciiPrint ("\n NBP file downloaded successfully.\n");\r
return EFI_SUCCESS;\r
- } else if (Status == EFI_BUFFER_TOO_SMALL && Buffer != NULL) {\r
+ } else if ((Status == EFI_BUFFER_TOO_SMALL) && (Buffer != NULL)) {\r
AsciiPrint ("\n PXE-E05: Buffer size is smaller than the requested file.\n");\r
} else if (Status == EFI_DEVICE_ERROR) {\r
AsciiPrint ("\n PXE-E07: Network device error.\n");\r
\r
return Status;\r
}\r
-\r