Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDanny Smith <dannysmith@users.sourceforge.net>2004-02-02 08:48:16 +0300
committerDanny Smith <dannysmith@users.sourceforge.net>2004-02-02 08:48:16 +0300
commit5773d89b943d2ee8884f6a700c8c159de57969f3 (patch)
tree7cbfe0ed3b671bf0433d64f09261751c8957d50d
parent75b0412ba80c23a79f05aebad7b872ac03262035 (diff)
* include/winioctl.h ( NTFS_VOLUME_DATA_BUFFER): Add structure.
(FSCTL_GET_NTFS_VOLUME_DATA): Add macro.
-rw-r--r--winsup/w32api/ChangeLog5
-rw-r--r--winsup/w32api/include/winioctl.h18
2 files changed, 23 insertions, 0 deletions
diff --git a/winsup/w32api/ChangeLog b/winsup/w32api/ChangeLog
index e5359bcd5..dd98d1205 100644
--- a/winsup/w32api/ChangeLog
+++ b/winsup/w32api/ChangeLog
@@ -1,5 +1,10 @@
2004-02-02 Danny Smith <dannysmith@users.sourceforge.net>
+ * include/winioctl.h ( NTFS_VOLUME_DATA_BUFFER): Add structure.
+ (FSCTL_GET_NTFS_VOLUME_DATA): Add macro.
+
+2004-02-02 Danny Smith <dannysmith@users.sourceforge.net>
+
* include/commctrl.h (ICC_STANDARD_CLASSES, ICC_LINK_CLASS): Add
defines.
diff --git a/winsup/w32api/include/winioctl.h b/winsup/w32api/include/winioctl.h
index d32b38172..2457d603c 100644
--- a/winsup/w32api/include/winioctl.h
+++ b/winsup/w32api/include/winioctl.h
@@ -80,6 +80,7 @@ extern "C" {
#define FSCTL_SET_COMPRESSION CTL_CODE(FILE_DEVICE_FILE_SYSTEM,16,METHOD_BUFFERED,FILE_READ_DATA|FILE_WRITE_DATA)
#define FSCTL_READ_COMPRESSION CTL_CODE(FILE_DEVICE_FILE_SYSTEM,17,METHOD_NEITHER,FILE_READ_DATA)
#define FSCTL_WRITE_COMPRESSION CTL_CODE(FILE_DEVICE_FILE_SYSTEM,18,METHOD_NEITHER,FILE_WRITE_DATA)
+#define FSCTL_GET_NTFS_VOLUME_DATA CTL_CODE(FILE_DEVICE_FILE_SYSTEM,25,METHOD_BUFFERED,FILE_ANY_ACCESS)
#define FSCTL_GET_VOLUME_BITMAP CTL_CODE(FILE_DEVICE_FILE_SYSTEM,27,METHOD_NEITHER,FILE_ANY_ACCESS)
#define FSCTL_GET_RETRIEVAL_POINTERS CTL_CODE(FILE_DEVICE_FILE_SYSTEM,28,METHOD_NEITHER,FILE_ANY_ACCESS)
#define FSCTL_MOVE_FILE CTL_CODE(FILE_DEVICE_FILE_SYSTEM,29,METHOD_BUFFERED,FILE_ANY_ACCESS)
@@ -502,6 +503,23 @@ typedef struct {
LARGE_INTEGER BitmapSize;
BYTE Buffer[1];
} VOLUME_BITMAP_BUFFER,*PVOLUME_BITMAP_BUFFER;
+typedef struct {
+ LARGE_INTEGER VolumeSerialNumber;
+ LARGE_INTEGER NumberSectors;
+ LARGE_INTEGER TotalClusters;
+ LARGE_INTEGER FreeClusters;
+ LARGE_INTEGER TotalReserved;
+ DWORD BytesPerSector;
+ DWORD BytesPerCluster;
+ DWORD BytesPerFileRecordSegment;
+ DWORD ClustersPerFileRecordSegment;
+ LARGE_INTEGER MftValidDataLength;
+ LARGE_INTEGER MftStartLcn;
+ LARGE_INTEGER Mft2StartLcn;
+ LARGE_INTEGER MftZoneStart;
+ LARGE_INTEGER MftZoneEnd;
+} NTFS_VOLUME_DATA_BUFFER, *PNTFS_VOLUME_DATA_BUFFER;
+
#define IsRecognizedPartition(t)\
(((t&PARTITION_NTFT)&&((t&~VALID_NTFT)==PARTITION_FAT_12))||\
((t&PARTITION_NTFT)&&((t&~VALID_NTFT)==PARTITION_FAT_16))||\