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:
Diffstat (limited to 'winsup/w32api/include/winioctl.h')
-rw-r--r--winsup/w32api/include/winioctl.h29
1 files changed, 23 insertions, 6 deletions
diff --git a/winsup/w32api/include/winioctl.h b/winsup/w32api/include/winioctl.h
index faf0cdfbc..b779c29fa 100644
--- a/winsup/w32api/include/winioctl.h
+++ b/winsup/w32api/include/winioctl.h
@@ -134,7 +134,12 @@ extern "C" {
#define PARTITION_EXTENDED 5
#define PARTITION_HUGE 6
#define PARTITION_IFS 7
+#define PARTITION_FAT32 0x0B
+#define PARTITION_FAT32_XINT13 0x0C
+#define PARTITION_XINT13 0x0E
+#define PARTITION_XINT13_EXTENDED 0x0F
#define PARTITION_PREP 0x41
+#define PARTITION_LDM 0x42
#define PARTITION_UNIX 0x63
#define PARTITION_NTFT 128
#define VALID_NTFT 0xC0
@@ -261,7 +266,7 @@ typedef struct _DRIVE_LAYOUT_INFORMATION {
DWORD PartitionCount;
DWORD Signature;
PARTITION_INFORMATION PartitionEntry[1];
-} DRIVE_LAYOUT_INFORMATION;
+} DRIVE_LAYOUT_INFORMATION, *PDRIVE_LAYOUT_INFORMATION;
typedef struct _PERF_BIN {
DWORD NumberOfBins;
DWORD TypeOfBin;
@@ -282,14 +287,26 @@ typedef struct _VERIFY_INFORMATION {
LARGE_INTEGER StartingOffset;
DWORD Length;
} VERIFY_INFORMATION,*PVERIFY_INFORMATION;
-#define IsRecognizedPartition(t) (((t&PARTITION_NTFT)&&((t&~0xC0)==PARTITION_FAT_12))||\
- ((t&PARTITION_NTFT)&&((t&~0xC0)==PARTITION_FAT_16))||\
- ((t&PARTITION_NTFT)&&((t&~0xC0)==PARTITION_IFS))||\
- ((t&PARTITION_NTFT)&&((t&~0xC0)==PARTITION_HUGE))||\
+#define IsRecognizedPartition(t)\
+ (((t&PARTITION_NTFT)&&((t&~VALID_NTFT)==PARTITION_FAT_12))||\
+ ((t&PARTITION_NTFT)&&((t&~VALID_NTFT)==PARTITION_FAT_16))||\
+ ((t&PARTITION_NTFT)&&((t&~VALID_NTFT)==PARTITION_IFS))||\
+ ((t&PARTITION_NTFT)&&((t&~VALID_NTFT)==PARTITION_HUGE))||\
+ ((t&PARTITION_NTFT)&&((t&~VALID_NTFT)==PARTITION_FAT32))||\
+ ((t&PARTITION_NTFT)&&((t&~VALID_NTFT)==PARTITION_FAT32_XINT13))||\
+ ((t&PARTITION_NTFT)&&((t&~VALID_NTFT)==PARTITION_XINT13))||\
((t&~PARTITION_NTFT)==PARTITION_FAT_12)||\
((t&~PARTITION_NTFT)==PARTITION_FAT_16)||\
((t&~PARTITION_NTFT)==PARTITION_IFS)||\
- ((t&~PARTITION_NTFT)==PARTITION_HUGE))
+ ((t&~PARTITION_NTFT)==PARTITION_HUGE)||\
+ ((t&~PARTITION_NTFT)==PARTITION_FAT32)||\
+ ((t&~PARTITION_NTFT)==PARTITION_FAT32_XINT13)||\
+ ((t&~PARTITION_NTFT)==PARTITION_XINT13))
+#define IsContainerPartition(t)\
+ (((t&PARTITION_NTFT)&&((t&~VALID_NTFT)==PARTITION_EXTENDED))||\
+ ((t&PARTITION_NTFT)&&((t&~VALID_NTFT)==PARTITION_XINT13_EXTENDED))||\
+ ((t&~PARTITION_NTFT)==PARTITION_EXTENDED)||\
+ ((t&~PARTITION_NTFT)==PARTITION_XINT13_EXTENDED))
#ifdef __cplusplus
}
#endif