From a1b52e2b53f20e39894e5e80e7fc08c1950d9224 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Fern=C3=A1ndez=20Rojas?= Date: Tue, 21 Jun 2016 08:33:50 +0200 Subject: dosfstools: update to v4.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Álvaro Fernández Rojas --- .../0011-Remove-linux-msdos_fs.h-includes.patch | 209 --------------------- 1 file changed, 209 deletions(-) delete mode 100644 tools/dosfstools/patches/0011-Remove-linux-msdos_fs.h-includes.patch (limited to 'tools/dosfstools/patches/0011-Remove-linux-msdos_fs.h-includes.patch') diff --git a/tools/dosfstools/patches/0011-Remove-linux-msdos_fs.h-includes.patch b/tools/dosfstools/patches/0011-Remove-linux-msdos_fs.h-includes.patch deleted file mode 100644 index 08bd36ddc4..0000000000 --- a/tools/dosfstools/patches/0011-Remove-linux-msdos_fs.h-includes.patch +++ /dev/null @@ -1,209 +0,0 @@ -From e18d72f70e30109492e9602ace5560e0c90b4a8b Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?=C3=81lvaro=20Fern=C3=A1ndez=20Rojas?= -Date: Sat, 7 Mar 2015 13:23:23 +0100 -Subject: [PATCH 11/14] Remove linux/msdos_fs.h includes -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Signed-off-by: Álvaro Fernández Rojas -Signed-off-by: Andreas Bombe ---- - src/file.c | 7 +------ - src/file.h | 2 ++ - src/fsck.fat.h | 8 ++------ - src/mkfs.fat.c | 32 +++--------------------------- - src/msdos_fs.h | 61 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ - 5 files changed, 69 insertions(+), 41 deletions(-) - create mode 100644 src/msdos_fs.h - -diff --git a/src/file.c b/src/file.c -index 0b53840..9519070 100644 ---- a/src/file.c -+++ b/src/file.c -@@ -30,14 +30,9 @@ - #include - #include - --#define _LINUX_STAT_H /* hack to avoid inclusion of */ --#define _LINUX_STRING_H_ /* hack to avoid inclusion of */ --#define _LINUX_FS_H /* hack to avoid inclusion of */ -- --#include -- - #include "common.h" - #include "file.h" -+#include "msdos_fs.h" - #include "charconv.h" - - FDSC *fp_root = NULL; -diff --git a/src/file.h b/src/file.h -index 3adfc96..eaaf356 100644 ---- a/src/file.h -+++ b/src/file.h -@@ -23,6 +23,8 @@ - #ifndef _FILE_H - #define _FILE_H - -+#include "msdos_fs.h" -+ - typedef enum { fdt_none, fdt_drop, fdt_undelete } FD_TYPE; - - typedef struct _fptr { -diff --git a/src/fsck.fat.h b/src/fsck.fat.h -index 27e9d52..e5f6178 100644 ---- a/src/fsck.fat.h -+++ b/src/fsck.fat.h -@@ -28,16 +28,12 @@ - #define _DOSFSCK_H - - #include --#define _LINUX_STAT_H /* hack to avoid inclusion of */ --#define _LINUX_STRING_H_ /* hack to avoid inclusion of */ --#define _LINUX_FS_H /* hack to avoid inclusion of */ -- --#include -- - #include - #include - #include - -+#include "msdos_fs.h" -+ - #define VFAT_LN_ATTR (ATTR_RO | ATTR_HIDDEN | ATTR_SYS | ATTR_VOLUME) - - #define FAT_STATE_DIRTY 0x01 -diff --git a/src/mkfs.fat.c b/src/mkfs.fat.c -index 3d1512f..76d40d8 100644 ---- a/src/mkfs.fat.c -+++ b/src/mkfs.fat.c -@@ -67,6 +67,8 @@ - #include - #include - -+#include "msdos_fs.h" -+ - /* In earlier versions, an own llseek() was used, but glibc lseek() is - * sufficient (or even better :) for 64 bit offsets in the meantime */ - #define llseek lseek -@@ -99,21 +101,6 @@ static inline int cdiv(int a, int b) - return (a + b - 1) / b; - } - --/* MS-DOS filesystem structures -- I included them here instead of -- including linux/msdos_fs.h since that doesn't include some fields we -- need */ -- --#define ATTR_RO 1 /* read-only */ --#define ATTR_HIDDEN 2 /* hidden */ --#define ATTR_SYS 4 /* system */ --#define ATTR_VOLUME 8 /* volume label */ --#define ATTR_DIR 16 /* directory */ --#define ATTR_ARCH 32 /* archived */ -- --#define ATTR_NONE 0 /* no attribute bits */ --#define ATTR_UNUSED (ATTR_VOLUME | ATTR_ARCH | ATTR_SYS | ATTR_HIDDEN) -- /* attribute bits that are copied "as is" */ -- - /* FAT values */ - #define FAT_EOF (atari_format ? 0x0fffffff : 0x0ffffff8) - #define FAT_BAD 0x0ffffff7 -@@ -200,19 +187,6 @@ struct fat32_fsinfo { - uint32_t reserved2[4]; - }; - --struct msdos_dir_entry { -- char name[8], ext[3]; /* name and extension */ -- uint8_t attr; /* attribute bits */ -- uint8_t lcase; /* Case for base and extension */ -- uint8_t ctime_ms; /* Creation time, milliseconds */ -- uint16_t ctime; /* Creation time */ -- uint16_t cdate; /* Creation date */ -- uint16_t adate; /* Last access date */ -- uint16_t starthi; /* high 16 bits of first cl. (FAT32) */ -- uint16_t time, date, start; /* time, date and first cluster */ -- uint32_t size; /* file size (in bytes) */ --} __attribute__ ((packed)); -- - /* The "boot code" we put into the filesystem... it writes a message and - tells the user to try again */ - -@@ -1244,7 +1218,7 @@ static void setup_tables(void) - htole16((unsigned short)(ctime->tm_mday + - ((ctime->tm_mon + 1) << 5) + - ((ctime->tm_year - 80) << 9))); -- de->ctime_ms = 0; -+ de->ctime_cs = 0; - de->ctime = de->time; - de->cdate = de->date; - de->adate = de->date; -diff --git a/src/msdos_fs.h b/src/msdos_fs.h -new file mode 100644 -index 0000000..54b2a34 ---- /dev/null -+++ b/src/msdos_fs.h -@@ -0,0 +1,61 @@ -+/* msdos_fs.h - MS-DOS filesystem constants/structures -+ -+ 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 -+ the Free Software Foundation, either version 3 of the License, or -+ (at your option) any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ GNU General Public License for more details. -+ -+ You should have received a copy of the GNU General Public License -+ along with this program. If not, see . -+ -+ The complete text of the GNU General Public License -+ can be found in /usr/share/common-licenses/GPL-3 file. -+*/ -+ -+#ifndef _MSDOS_FS_H -+#define _MSDOS_FS_H -+ -+#include -+ -+#define SECTOR_SIZE 512 /* sector size (bytes) */ -+#define MSDOS_DPS (SECTOR_SIZE / sizeof(struct msdos_dir_entry)) -+#define MSDOS_DPS_BITS 4 /* log2(MSDOS_DPS) */ -+#define MSDOS_DIR_BITS 5 /* log2(sizeof(struct msdos_dir_entry)) */ -+ -+#define ATTR_NONE 0 /* no attribute bits */ -+#define ATTR_RO 1 /* read-only */ -+#define ATTR_HIDDEN 2 /* hidden */ -+#define ATTR_SYS 4 /* system */ -+#define ATTR_VOLUME 8 /* volume label */ -+#define ATTR_DIR 16 /* directory */ -+#define ATTR_ARCH 32 /* archived */ -+ -+/* attribute bits that are copied "as is" */ -+#define ATTR_UNUSED (ATTR_VOLUME | ATTR_ARCH | ATTR_SYS | ATTR_HIDDEN) -+ -+#define DELETED_FLAG 0xe5 /* marks file as deleted when in name[0] */ -+#define IS_FREE(n) (!*(n) || *(n) == DELETED_FLAG) -+ -+#define MSDOS_NAME 11 /* maximum name length */ -+#define MSDOS_DOT ". " /* ".", padded to MSDOS_NAME chars */ -+#define MSDOS_DOTDOT ".. " /* "..", padded to MSDOS_NAME chars */ -+ -+struct msdos_dir_entry { -+ uint8_t name[8], ext[3]; /* name and extension */ -+ uint8_t attr; /* attribute bits */ -+ uint8_t lcase; /* Case for base and extension */ -+ uint8_t ctime_cs; /* Creation time, centiseconds (0-199) */ -+ uint16_t ctime; /* Creation time */ -+ uint16_t cdate; /* Creation date */ -+ uint16_t adate; /* Last access date */ -+ uint16_t starthi; /* High 16 bits of cluster in FAT32 */ -+ uint16_t time, date, start; /* time, date and first cluster */ -+ uint32_t size; /* file size (in bytes) */ -+} __attribute__ ((packed)); -+ -+#endif /* _MSDOS_FS_H */ --- -1.9.1 - -- cgit v1.2.3