85 lines
1.3 KiB
C
85 lines
1.3 KiB
C
/*++
|
|
|
|
Copyright (c) 2024, Quinn Stephens.
|
|
Provided under the BSD 3-Clause license.
|
|
|
|
Module Name:
|
|
|
|
bootlib.h
|
|
|
|
Abstract:
|
|
|
|
Boot library definitions.
|
|
|
|
--*/
|
|
|
|
#ifndef _BOOTLIB_H
|
|
#define _BOOTLIB_H
|
|
|
|
#include <nt.h>
|
|
#include "bootmgr.h"
|
|
|
|
typedef struct {
|
|
ULONG Flags;
|
|
ULONG TranslationType;
|
|
ULONG MinimumPageAllocation;
|
|
} BOOT_LIBRARY_PARAMETERS, *PBOOT_LIBRARY_PARAMETERS;
|
|
|
|
VOID
|
|
ConsolePrint (
|
|
IN PWSTR String
|
|
);
|
|
|
|
VOID
|
|
ConsolePrintf (
|
|
IN PWSTR Format,
|
|
...
|
|
);
|
|
|
|
//
|
|
// Enable/disable debug printing.
|
|
//
|
|
#ifdef _DEBUG
|
|
#define DebugPrint(String) ConsolePrint(String)
|
|
#define DebugPrintf(Format, ...) ConsolePrintf(Format, __VA_ARGS__)
|
|
#else
|
|
#define DebugPrint(String)
|
|
#define DebugPrintf(Format, ...)
|
|
#endif
|
|
|
|
ULONG
|
|
BlGetBootOptionSize (
|
|
IN PBOOT_APPLICATION_OPTION Option
|
|
);
|
|
|
|
ULONG
|
|
BlGetBootOptionListSize (
|
|
IN PBOOT_APPLICATION_OPTION Options
|
|
);
|
|
|
|
NTSTATUS
|
|
BlpFwInitialize (
|
|
IN ULONG Stage,
|
|
IN PBOOT_FIRMWARE_DATA FirmwareData
|
|
);
|
|
|
|
NTSTATUS
|
|
BlpMmInitialize (
|
|
IN PBOOT_MEMORY_INFO MemoryInfo,
|
|
IN ULONG TranslationType,
|
|
IN PBOOT_LIBRARY_PARAMETERS LibraryParameters
|
|
);
|
|
|
|
NTSTATUS
|
|
BlInitializeLibrary (
|
|
IN PBOOT_INPUT_PARAMETERS InputParameters,
|
|
IN PBOOT_LIBRARY_PARAMETERS LibraryParameters
|
|
);
|
|
|
|
NTSTATUS
|
|
BlDestroyLibrary (
|
|
VOID
|
|
);
|
|
|
|
#endif
|