Imported Upstream version 0.9.8
[sven/exfat-utils.git] / libexfat / exfatfs.h
index e7d7ee5c2308bcdca74b0cbbd1907ee09be84e4e..5a8e39fda58337a9b80077e2dc0f68a0372f183c 100644 (file)
@@ -2,7 +2,7 @@
        exfatfs.h (29.08.09)
        Definitions of structures and constants used in exFAT file system.
 
-       Copyright (C) 2009, 2010  Andrew Nayenko
+       Copyright (C) 2010-2012  Andrew Nayenko
 
        This program is free software: you can redistribute it and/or modify
        it under the terms of the GNU General Public License as published by
 typedef uint32_t cluster_t;            /* cluster number */
 
 #define EXFAT_FIRST_DATA_CLUSTER 2
+#define EXFAT_LAST_DATA_CLUSTER 0xfffffff6
 
 #define EXFAT_CLUSTER_FREE         0 /* free cluster */
 #define EXFAT_CLUSTER_BAD 0xfffffff7 /* cluster contains bad sector */
 #define EXFAT_CLUSTER_END 0xffffffff /* final cluster of file or directory */
 
+#define EXFAT_STATE_MOUNTED 2
+
 struct exfat_super_block
 {
        uint8_t jump[3];                                /* 0x00 jmp and nop instructions */
@@ -64,7 +67,6 @@ __attribute__((__packed__));
 #define EXFAT_ENTRY_VALID     0x80
 #define EXFAT_ENTRY_CONTINUED 0x40
 
-#define EXFAT_ENTRY_EOD       (0x00)
 #define EXFAT_ENTRY_BITMAP    (0x01 | EXFAT_ENTRY_VALID)
 #define EXFAT_ENTRY_UPCASE    (0x02 | EXFAT_ENTRY_VALID)
 #define EXFAT_ENTRY_LABEL     (0x03 | EXFAT_ENTRY_VALID)