summaryrefslogtreecommitdiffstats
path: root/src/exfat.h
diff options
context:
space:
mode:
authorChristophe Grenier <grenier@cgsecurity.org>2015-04-11 14:23:16 +0200
committerChristophe Grenier <grenier@cgsecurity.org>2015-04-11 14:23:16 +0200
commit67054372873f2ed5414da7fff1cb5744148289d6 (patch)
treea8cd9501bcfc1e1efec8ca6603e7f11b0ad2ec0c /src/exfat.h
parentefc94ee87ac3b4e3ecf4fb3ab4adac2ef0a6278f (diff)
add gcc_struct attribute to all __packed__ structure
do not use fseeko() with mingw32 gcc compiler
Diffstat (limited to 'src/exfat.h')
-rw-r--r--src/exfat.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/exfat.h b/src/exfat.h
index 9152f53..26f5e3f 100644
--- a/src/exfat.h
+++ b/src/exfat.h
@@ -47,7 +47,7 @@ struct exfat_super_block {
unsigned char allocated_percent; /* 0x70 percentage of allocated space (?) */
unsigned char xxxx05[397]; /* ??? (0x00...) */
uint16_t signature; /* 0xaa55 */
-} __attribute__ ((__packed__));
+} __attribute__ ((gcc_struct, __packed__));
struct exfat_file_entry
{
@@ -67,7 +67,7 @@ struct exfat_file_entry
uint8_t ctz;
uint8_t mtz;
uint8_t reserved2[7];
-} __attribute__ ((__packed__));
+} __attribute__ ((gcc_struct, __packed__));
struct exfat_stream_ext_entry
{
@@ -81,7 +81,7 @@ struct exfat_stream_ext_entry
uint32_t reserved3;
uint32_t first_cluster;
uint64_t data_length;
-} __attribute__ ((__packed__));
+} __attribute__ ((gcc_struct, __packed__));
struct exfat_alloc_bitmap_entry
{
@@ -90,7 +90,7 @@ struct exfat_alloc_bitmap_entry
uint8_t reserved[18];
uint32_t first_cluster;
uint64_t data_length;
-} __attribute__ ((__packed__));
+} __attribute__ ((gcc_struct, __packed__));
uint64_t exfat_cluster_to_offset(const struct exfat_super_block *exfat_header, const unsigned int cluster);
int exfat_read_cluster(disk_t *disk, const partition_t *partition, const struct exfat_super_block*exfat_header, void *buffer, const unsigned int cluster);