Query the value of NtfsMftZoneReservation on mount.
Not used yet.
CORE-8725

svn path=/trunk/; revision=66272
This commit is contained in:
Pierre Schweitzer 2015-02-14 20:55:47 +00:00
parent 4f6f4969d9
commit 5b0af50bdc
2 changed files with 25 additions and 0 deletions

View file

@ -167,6 +167,28 @@ ByeBye:
}
static
ULONG
NtfsQueryMftZoneReservation(VOID)
{
ULONG ZoneReservation = 1;
RTL_QUERY_REGISTRY_TABLE QueryTable[2];
RtlZeroMemory(QueryTable, sizeof(QueryTable));
QueryTable[0].Flags = RTL_QUERY_REGISTRY_DIRECT;
QueryTable[0].Name = L"NtfsMftZoneReservation";
QueryTable[0].EntryContext = &ZoneReservation;
RtlQueryRegistryValues(RTL_REGISTRY_CONTROL,
L"FileSystem",
QueryTable,
NULL,
NULL);
return ZoneReservation;
}
static
NTSTATUS
NtfsGetVolumeData(PDEVICE_OBJECT DeviceObject,
@ -362,6 +384,8 @@ NtfsGetVolumeData(PDEVICE_OBJECT DeviceObject,
ExFreePool(VolumeRecord);
NtfsInfo->MftZoneReservation = NtfsQueryMftZoneReservation();
return Status;
}

View file

@ -75,6 +75,7 @@ typedef struct _NTFS_INFO
UCHAR MinorVersion;
USHORT Flags;
ULONG MftZoneReservation;
} NTFS_INFO, *PNTFS_INFO;
#define NTFS_TYPE_CCB '20SF'