2743 PGUID AppIdentifier;
2744 HANDLE BcdHandle, ResumeBcdHandle;
2747 BOOLEAN XmlLoaded, DisableIntegrity, TestSigning, PersistBootSequence;
2748 BOOLEAN RebootOnError, CustomActions;
2752 ULONG SequenceListCount;
2758 ULONG SequenceCount;
2760 EfiPrintf(
L"ReactOS UEFI Boot Manager Initializing...\r\n");
2763 RebootOnError =
FALSE;
2766 #if defined(_M_IX86) || defined(_M_X64) 2769 EfiPrintf(
L"No time source defined for this platform\r\n");
2801 AppIdentifier = (
PGUID)&GUID_WINDOWS_BOOTMGR;
2834 Status = BmSecureBootInitializeMachinePolicy();
2844 sizeof(LibraryParameters));
2893 FveDisplayScreen = BmFveDisplayScreen;
2900 if (!DisableIntegrity)
2913 EfiPrintf(
L"Performing memory allocator tests...\r\n");
2996 #ifdef BL_NET_SUPPORT 2998 BlUtlRegisterMulticastRoutine();
3009 &PersistBootSequence);
3013 PersistBootSequence =
TRUE;
3034 SequenceList =
NULL;
3035 BootSequence =
NULL;
3044 if (!(BootSequence) && !(GetEntry))
3050 &SequenceListCount);
3067 if (PersistBootSequence)
3089 BootSequence =
NULL;
3094 if ((BootSequence) && ((GetEntry) || (SequenceId < SequenceCount)))
3097 BootEntry = BootSequence[SequenceId];
3098 BootSequence[SequenceId] =
NULL;
3104 if (SequenceId == SequenceCount)
3108 BootSequence =
NULL;
3114 ExitBootManager =
FALSE;
3223 if ((RebootOnError) ||
3233 ReturnArguments = (
PVOID)((
ULONG_PTR)BootParameters + BootParameters->ReturnArgumentsOffset);
#define BL_APPLICATION_ENTRY_REBOOT_ON_ERROR
NTSTATUS BmGetBootSequence(_In_ HANDLE BcdHandle, _In_ PGUID SequenceList, _In_ ULONG SequenceListCount, _In_ ULONG Flags, _Out_ PBL_LOADED_APPLICATION_ENTRY **BootSequence, _Out_ PULONG SequenceCount)
BL_LIBRARY_PARAMETERS BlpLibraryParameters
#define BL_LIBRARY_FLAG_REINITIALIZE
NTSTATUS BmResumeFromHibernate(_Out_ PHANDLE BcdResumeHandle)
NTSTATUS BmPurgeOption(_In_ HANDLE BcdHandle, _In_ PGUID ObjectId, _In_ ULONG Type)
VOID BlDestroyLibrary(VOID)
NTSTATUS BlGetBootOptionGuidList(_In_ PBL_BCD_OPTION List, _In_ ULONG Type, _Out_ PGUID *Value, _In_ PULONG Count)
NTSTATUS EfiStall(_In_ ULONG StallTime)
ULONGLONG ApplicationStartTime
NTSTATUS BmFwVerifySelfIntegrity(VOID)
NTSTATUS BmpBgDisplayClearScreen(_In_ ULONG Color)
NTSTATUS BmpLaunchBootEntry(_In_ PBL_LOADED_APPLICATION_ENTRY BootEntry, _Out_ PULONG EntryIndex, _In_ ULONG LaunchCode, _In_ BOOLEAN LaunchWinRe)
#define STATUS_INVALID_PARAMETER_9
NTSTATUS BlDisplayClearScreen(VOID)
VOID BlRemoveBootOption(_In_ PBL_BCD_OPTION List, _In_ ULONG Type)
PPC_QUAL unsigned long long __rdtsc(void)
#define BL_FATAL_ERROR_GENERIC
NTSTATUS BlMmAllocatePhysicalPages(_Inout_ PPHYSICAL_ADDRESS Address, _In_ BL_MEMORY_TYPE MemoryType, _In_ ULONGLONG PageCount, _In_ ULONG Attributes, _In_ ULONG Alignment)
NTSTATUS BlXmiInitialize(_In_ PWCHAR Stylesheet)
NTSTATUS BlMmFreePhysicalPages(_In_ PHYSICAL_ADDRESS Address)
NTSTATUS BlMmFreeHeap(_In_ PVOID Buffer)
BL_LOADED_APPLICATION_ENTRY BlpApplicationEntry
return STATUS_NOT_IMPLEMENTED
GUID BmApplicationIdentifier
VOID BmpInitializeBootStatusDataLog(VOID)
NTSTATUS BmFwInitializeBootDirectoryPath(VOID)
BOOLEAN BlDisplayValidOemBitmap(VOID)
#define BL_APPLICATION_ENTRY_FIXED_SEQUENCE
NTSTATUS BlGetBootOptionBoolean(_In_ PBL_BCD_OPTION List, _In_ ULONG Type, _Out_ PBOOLEAN Value)
VOID BmFwMemoryInitialize(VOID)
VOID BlDestroyBootEntry(_In_ PBL_LOADED_APPLICATION_ENTRY AppEntry)
NTSTATUS BlReplaceBootOptions(_In_ PBL_LOADED_APPLICATION_ENTRY AppEntry, _In_ PBL_BCD_OPTION NewOptions)
#define NT_SUCCESS(StatCode)
NTSTATUS BlCopyBootOptions(_In_ PBL_BCD_OPTION OptionList, _Out_ PBL_BCD_OPTION *CopiedOptions)
NTSTATUS BlSecureBootCheckForFactoryReset(VOID)
NTSTATUS BlInitializeLibrary(_In_ PBOOT_APPLICATION_PARAMETER_BLOCK BootAppParameters, _In_ PBL_LIBRARY_PARAMETERS LibraryParameters)
NTSTATUS BmpProcessBadMemory(VOID)
FORCEINLINE VOID BlSetupDefaultParameters(_Out_ PBL_LIBRARY_PARAMETERS LibraryParameters)
PGUID BlGetApplicationIdentifier(VOID)
_Must_inspect_result_ typedef _In_ PHYSICAL_ADDRESS PhysicalAddress
VOID BmCloseDataStore(_In_ HANDLE Handle)
NTSTATUS BmOpenDataStore(_Out_ PHANDLE Handle)
#define BL_FATAL_ERROR_BCD_PARSE
VOID BlImgQueryCodeIntegrityBootOptions(_In_ PBL_LOADED_APPLICATION_ENTRY ApplicationEntry, _Out_ PBOOLEAN IntegrityChecksDisabled, _Out_ PBOOLEAN TestSigning)
NTSTATUS BmpUpdateApplicationOptions(_In_ HANDLE BcdHandle)
NTSTATUS BlUtlRegisterProgressRoutine(VOID)
VOID EfiPrintf(_In_ PWCHAR Format,...)
#define BL_LIBRARY_FLAG_REINITIALIZE_ALL
VOID BmFatalErrorEx(_In_ ULONG ErrorCode, _In_ ULONG_PTR Parameter1, _In_ ULONG_PTR Parameter2, _In_ ULONG_PTR Parameter3, _In_ ULONG_PTR Parameter4)
NTSTATUS BmFwRegisterRevocationList(VOID)
ULONG MinimumAllocationCount
#define RtlCopyMemory(Destination, Source, Length)
#define BL_RETURN_ARGUMENTS_VERSION
BOOLEAN BmDisplayStateCached
PBL_BOOT_ERROR BmpInternalBootError
PWCHAR BlResourceFindHtml(VOID)
NTSTATUS BlXmiWrite(_In_ PWCHAR XmlTag)
NTSTATUS BmpGetSelectedBootEntry(_In_ HANDLE BcdHandle, _Out_ PBL_LOADED_APPLICATION_ENTRY *SelectedBootEntry, _Out_ PULONG EntryIndex, _Out_ PBOOLEAN ExitBootManager)