16#define PARTITION_EISA 0x12
17#define PARTITION_HIBERNATION 0x84
18#define PARTITION_DIAGNOSTIC 0xA0
19#define PARTITION_DELL 0xDE
20#define PARTITION_IBM 0xFE
22#define IsOEMPartition(PartitionType) \
23 ( ((PartitionType) == PARTITION_EISA) || \
24 ((PartitionType) == PARTITION_HIBERNATION) || \
25 ((PartitionType) == PARTITION_DIAGNOSTIC) || \
26 ((PartitionType) == PARTITION_DELL) || \
27 ((PartitionType) == PARTITION_IBM) )
170#define PARTITION_TBL_SIZE 4
172#define PARTITION_MAGIC 0xAA55
175#define EFI_PMBR_OSTYPE_EFI 0xEE
_In_ PFCB _In_ LONGLONG StartingOffset
enum _FORMATSTATE FORMATSTATE
static const WCHAR Signature[]
enum _ERROR_NUMBER ERROR_NUMBER
ERROR_NUMBER ExtendedPartitionCreationChecks(_In_ PPARTENTRY PartEntry)
VOID DestroyPartitionList(IN PPARTLIST List)
struct _PARTITION * PPARTITION
ERROR_NUMBER PartitionCreationChecks(_In_ PPARTENTRY PartEntry)
PPARTENTRY SelectPartition(IN PPARTLIST List, IN ULONG DiskNumber, IN ULONG PartitionNumber)
BOOLEAN CreatePartition(_In_ PPARTLIST List, _Inout_ PPARTENTRY PartEntry, _In_ ULONGLONG SectorCount, _In_ BOOLEAN AutoCreate)
BOOLEAN SetMountedDeviceValues(IN PPARTLIST List)
BOOLEAN GetDiskOrPartition(IN PPARTLIST List, IN ULONG DiskNumber, IN ULONG PartitionNumber OPTIONAL, OUT PDISKENTRY *pDiskEntry, OUT PPARTENTRY *pPartEntry OPTIONAL)
ULONGLONG AlignUp(IN ULONGLONG Value, IN ULONG Alignment)
enum _FORMATSTATE FORMATSTATE
BOOLEAN WritePartitionsToDisk(IN PPARTLIST List)
PPARTENTRY GetPartition(IN PDISKENTRY DiskEntry, IN ULONG PartitionNumber)
PDISKENTRY GetDiskByNumber(IN PPARTLIST List, IN ULONG DiskNumber)
ULONGLONG RoundingDivide(IN ULONGLONG Dividend, IN ULONGLONG Divisor)
VOID SetMBRPartitionType(IN PPARTENTRY PartEntry, IN UCHAR PartitionType)
enum _FORMATSTATE * PFORMATSTATE
struct BIOS_DISK * PBIOS_DISK
struct _PARTLIST * PPARTLIST
struct _PARTITION_SECTOR * PPARTITION_SECTOR
PPARTENTRY GetPrevPartition(IN PPARTLIST List, IN PPARTENTRY CurrentPart OPTIONAL)
ULONGLONG AlignDown(IN ULONGLONG Value, IN ULONG Alignment)
BOOLEAN GetNextUncheckedPartition(IN PPARTLIST List, OUT PDISKENTRY *pDiskEntry OPTIONAL, OUT PPARTENTRY *pPartEntry)
BOOLEAN DeletePartition(IN PPARTLIST List, IN PPARTENTRY PartEntry, OUT PPARTENTRY *FreeRegion OPTIONAL)
BOOLEAN IsSuperFloppy(IN PDISKENTRY DiskEntry)
struct _PARTENTRY * PPARTENTRY
struct _BIOSDISKENTRY * PBIOSDISKENTRY
PPARTLIST CreatePartitionList(VOID)
PPARTENTRY GetNextPartition(IN PPARTLIST List, IN PPARTENTRY CurrentPart OPTIONAL)
BOOLEAN IsPartitionActive(IN PPARTENTRY PartEntry)
PDISKENTRY GetDiskByBiosNumber(IN PPARTLIST List, IN ULONG HwDiskNumber)
struct _PARTITION_SECTOR PARTITION_SECTOR
BOOLEAN SetActivePartition(IN PPARTLIST List, IN PPARTENTRY PartEntry, IN PPARTENTRY OldActivePart OPTIONAL)
struct _DISKENTRY DISKENTRY
struct _PARTLIST PARTLIST
BOOLEAN GetNextUnformattedPartition(IN PPARTLIST List, OUT PDISKENTRY *pDiskEntry OPTIONAL, OUT PPARTENTRY *pPartEntry)
BOOLEAN CreateExtendedPartition(_In_ PPARTLIST List, _Inout_ PPARTENTRY PartEntry, _In_ ULONGLONG SectorCount)
BOOLEAN SetMountedDeviceValue(IN WCHAR Letter, IN ULONG Signature, IN LARGE_INTEGER StartingOffset)
PPARTENTRY FindSupportedSystemPartition(IN PPARTLIST List, IN BOOLEAN ForceSelect, IN PDISKENTRY AlternativeDisk OPTIONAL, IN PPARTENTRY AlternativePart OPTIONAL)
PDISKENTRY GetDiskBySignature(IN PPARTLIST List, IN ULONG Signature)
NTSTATUS DismountVolume(IN PPARTENTRY PartEntry)
struct _BIOSDISKENTRY BIOSDISKENTRY
struct _DISKENTRY * PDISKENTRY
struct _PARTENTRY PARTENTRY
struct _PARTITION PARTITION
NTSTATUS WritePartitions(IN PDISKENTRY DiskEntry)
PDISKENTRY GetDiskBySCSI(IN PPARTLIST List, IN USHORT Port, IN USHORT Bus, IN USHORT Id)
enum _PARTITION_STYLE PARTITION_STYLE
enum _MEDIA_TYPE MEDIA_TYPE
PULONG MinorVersion OPTIONAL
CM_DISK_GEOMETRY_DEVICE_DATA DiskGeometry
CM_INT13_DRIVE_PARAMETER Int13DiskData
ULARGE_INTEGER SectorCount
UNICODE_STRING DriverName
PPARTENTRY ExtendedPartition
LIST_ENTRY LogicalPartListHead
struct _PARTLIST * PartList
PARTITION_STYLE DiskStyle
LIST_ENTRY PrimaryPartListHead
PDRIVE_LAYOUT_INFORMATION LayoutBuffer
ULARGE_INTEGER SectorCount
WCHAR FileSystem[MAX_PATH+1]
struct _DISKENTRY * DiskEntry
ULONG OnDiskPartitionNumber
ULARGE_INTEGER StartSector
PARTITION Partition[PARTITION_TBL_SIZE]
unsigned char PartitionType
unsigned char EndingSector
unsigned char StartingHead
unsigned int StartingBlock
unsigned char EndingCylinder
unsigned char StartingSector
unsigned char StartingCylinder
PPARTENTRY SystemPartition
LIST_ENTRY BiosDiskListHead
#define PARTITION_TBL_SIZE
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _Out_opt_ PUSHORT _Inout_opt_ PUNICODE_STRING Value
_Must_inspect_result_ _In_ WDFCMRESLIST List
_Reserved_ PVOID Reserved
_In_ ULONG _In_ ULONG PartitionNumber
_In_ LARGE_INTEGER Divisor