You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
91 lines
2.0 KiB
91 lines
2.0 KiB
/*++
|
|
|
|
Copyright (c) 1999 Microsoft Corporation
|
|
|
|
Module Name:
|
|
|
|
fstub.h
|
|
|
|
Abstract:
|
|
|
|
Fstub private header file.
|
|
|
|
Author:
|
|
|
|
Matthew D Hendel (math) 01-Nov-1999
|
|
|
|
Revision History:
|
|
|
|
--*/
|
|
|
|
#pragma once
|
|
|
|
#pragma warning(disable:4214) // bit field types other than int
|
|
#pragma warning(disable:4201) // nameless struct/union
|
|
#pragma warning(disable:4127) // condition expression is constant
|
|
#pragma warning(disable:4115) // named type definition in parentheses
|
|
#pragma warning(disable:4706) // assignment within conditional expression
|
|
|
|
|
|
typedef struct _INTERNAL_DISK_GEOMETRY {
|
|
DISK_GEOMETRY Geometry;
|
|
LARGE_INTEGER DiskSize;
|
|
} INTERNAL_DISK_GEOMETRY, *PINTERNAL_DISK_GEOMETRY;
|
|
|
|
//
|
|
// Verify that the INTERNAL_DISK_GEOMETRY structure matches the DISK_GEOMETRY
|
|
// structure.
|
|
//
|
|
|
|
C_ASSERT (FIELD_OFFSET (DISK_GEOMETRY_EX, Geometry) ==
|
|
FIELD_OFFSET (INTERNAL_DISK_GEOMETRY, Geometry) &&
|
|
FIELD_OFFSET (DISK_GEOMETRY_EX, DiskSize) ==
|
|
FIELD_OFFSET (INTERNAL_DISK_GEOMETRY, DiskSize));
|
|
|
|
//
|
|
// Debugging macros and flags
|
|
//
|
|
|
|
#define FSTUB_VERBOSE_LEVEL 4
|
|
|
|
#if DBG
|
|
|
|
VOID
|
|
FstubDbgPrintPartition(
|
|
IN PPARTITION_INFORMATION Partition,
|
|
IN ULONG PartitionCount
|
|
);
|
|
|
|
VOID
|
|
FstubDbgPrintDriveLayout(
|
|
IN PDRIVE_LAYOUT_INFORMATION Layout
|
|
);
|
|
|
|
VOID
|
|
FstubDbgPrintPartitionEx(
|
|
IN PPARTITION_INFORMATION_EX PartitionEx,
|
|
IN ULONG PartitionCount
|
|
);
|
|
|
|
VOID
|
|
FstubDbgPrintDriveLayoutEx(
|
|
IN PDRIVE_LAYOUT_INFORMATION_EX LayoutEx
|
|
);
|
|
|
|
VOID
|
|
FstubDbgPrintSetPartitionEx(
|
|
IN PSET_PARTITION_INFORMATION_EX SetPartition,
|
|
IN ULONG PartitionNumber
|
|
);
|
|
|
|
#else
|
|
|
|
#define FstubDbgPrintPartition(Partition, PartitionCount)
|
|
#define FstubDbgPrintDriveLayout(Layout)
|
|
#define FstubDbgPrintPartitionEx(PartitionEx, PartitionCount)
|
|
#define FstubDbgPrintDriveLayoutEx(LayoutEx)
|
|
#define FstubDbgPrintSetPartitionEx(SetPartition, PartitionNumber)
|
|
|
|
#endif // !DBG
|
|
|
|
|