VOID
FASTCALL
xHalExamineMBR(
IN PDEVICE_OBJECT DeviceObject,
IN ULONG SectorSize,
IN ULONG MBRTypeIdentifier,
OUT PVOID *Buffer
);
Routine Description:
Given a master boot record type (MBR - the zero'th sector on the disk),
read the master boot record of a disk. If the MBR is found to be of that
type, allocate a structure whose layout is dependant upon that partition
type, fill with the appropriate values, and return a pointer to that buffer
in the output parameter.
The best example for a use of this routine is to support Ontrack
systems DiskManager software. Ontrack software lays down a special
partition describing the entire drive. The special partition type
(0x54) will be recognized and a couple of longwords of data will
be passed back in a buffer for a disk driver to act upon.
Arguments:
DeviceObject - The device object describing the entire drive.
SectorSize - The minimum number of bytes that an IO operation can
fetch.
MBRIndentifier - A value that will be searched for in the
in the MBR. This routine will understand
the semantics implied by this value.
Buffer - Pointer to a buffer that returns data according to the
type of MBR searched for. If the MBR is not of the
type asked for, the buffer will not be allocated and this
pointer will be NULL. It is the responsibility of the
caller of HalExamineMBR to deallocate the buffer. The
caller should deallocate the memory ASAP.
Return Value:
None.