Initialize for dosfstools
This commit is contained in:
commit
b1d5b82835
8 changed files with 1371 additions and 0 deletions
1
.dosfstools.metadata
Normal file
1
.dosfstools.metadata
Normal file
|
@ -0,0 +1 @@
|
|||
3e8602960b8ec95de62f0e48c57464815d29af2a5d9d7bb7444eb9e544c6aa10 dosfstools-4.1.tar.gz
|
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
dosfstools-4.1.tar.gz
|
BIN
dosfstools-4.1.tar.gz.sig
Normal file
BIN
dosfstools-4.1.tar.gz.sig
Normal file
Binary file not shown.
101
dosfstools-add-g.patch
Normal file
101
dosfstools-add-g.patch
Normal file
|
@ -0,0 +1,101 @@
|
|||
From e579a7df89bb3a6df08847d45c70c8ebfabca7d2 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Pali=20Roh=C3=A1r?= <pali.rohar@gmail.com>
|
||||
Date: Sat, 17 Nov 2018 01:12:52 +0100
|
||||
Subject: [PATCH] mkfs.fat: Allow to specify disk geometry via new -g option
|
||||
|
||||
Backported.
|
||||
|
||||
---
|
||||
manpages/mkfs.fat.8.in | 8 ++++++++
|
||||
src/mkfs.fat.c | 25 ++++++++++++++++++++++---
|
||||
2 files changed, 30 insertions(+), 3 deletions(-)
|
||||
|
||||
Index: dosfstools-4.1/manpages/mkfs.fat.8.in
|
||||
===================================================================
|
||||
--- dosfstools-4.1.orig/manpages/mkfs.fat.8.in
|
||||
+++ dosfstools-4.1/manpages/mkfs.fat.8.in
|
||||
@@ -89,6 +89,14 @@ The default is 2.
|
||||
Specifies the type of file allocation tables used (12, 16 or 32 bit).
|
||||
If nothing is specified, \fBmkfs.fat\fR will automatically select between 12, 16
|
||||
and 32 bit, whatever fits better for the filesystem size.
|
||||
+.IP "\fB\-g\fR \fIHEADS\fR/\fISECTORS-PER-TRACK\fR" 4
|
||||
+Specify \fIHEADS\fR and \fISECTORS-PER-TRACK\fR numbers which represents
|
||||
+disk geometry of \fIDEVICE\fR. Both numbers are stored into the FAT boot sector.
|
||||
+Number \fISECTORS-PER-TRACK\fR is used also for aligning the total count of FAT
|
||||
+sectors. By default disk geometry is read from \fIDEVICE\fR itself. If it is not
|
||||
+available then \fILBA-Assist Translation\fR and translation table from the
|
||||
+\fISD Card Part 2 File System Specification\fR based on total number of disk
|
||||
+sectors is used.
|
||||
.IP "\fB\-h\fR \fINUMBER-OF-HIDDEN-SECTORS\fR" 4
|
||||
Select the number of hidden sectors in the volume.
|
||||
Apparently some digital cameras get indigestion if you feed them a CF card
|
||||
Index: dosfstools-4.1/src/mkfs.fat.c
|
||||
===================================================================
|
||||
--- dosfstools-4.1.orig/src/mkfs.fat.c
|
||||
+++ dosfstools-4.1/src/mkfs.fat.c
|
||||
@@ -620,8 +620,10 @@ static void establish_params(struct devi
|
||||
if (!root_dir_entries)
|
||||
root_dir_entries = def_root_dir_entries;
|
||||
|
||||
- bs.secs_track = htole16(sec_per_track);
|
||||
- bs.heads = htole16(heads);
|
||||
+ if (!bs.secs_track)
|
||||
+ bs.secs_track = htole16(sec_per_track);
|
||||
+ if (!bs.heads)
|
||||
+ bs.heads = htole16(heads);
|
||||
bs.media = media;
|
||||
bs.cluster_size = cluster_size;
|
||||
}
|
||||
@@ -1268,9 +1270,9 @@ static void usage(int exitval)
|
||||
Usage: mkfs.fat [-a][-A][-c][-C][-v][-I][-l bad-block-file][-b backup-boot-sector]\n\
|
||||
[-m boot-msg-file][-n volume-name][-i volume-id]\n\
|
||||
[-s sectors-per-cluster][-S logical-sector-size][-f number-of-FATs]\n\
|
||||
- [-h hidden-sectors][-F fat-size][-r root-dir-entries][-R reserved-sectors]\n\
|
||||
- [-M FAT-media-byte][-D drive_number]\n\
|
||||
- [--invariant]\n\
|
||||
+ [-h hidden-sectors][-F fat-size][-g heads/sector_per_track]\n\
|
||||
+ [-r root-dir-entries][-R reserved-sectors][-M FAT-media-byte]\n\
|
||||
+ [-D drive_number][--invariant]\n\
|
||||
[--help]\n\
|
||||
/dev/name [blocks]\n");
|
||||
exit(exitval);
|
||||
@@ -1319,6 +1321,7 @@ int main(int argc, char **argv)
|
||||
uint64_t cblocks = 0;
|
||||
int blocks_specified = 0;
|
||||
struct timeval create_timeval;
|
||||
+ long long conversion;
|
||||
|
||||
enum {OPT_HELP=1000, OPT_INVARIANT,};
|
||||
const struct option long_options[] = {
|
||||
@@ -1341,7 +1344,7 @@ int main(int argc, char **argv)
|
||||
|
||||
printf("mkfs.fat " VERSION " (" VERSION_DATE ")\n");
|
||||
|
||||
- while ((c = getopt_long(argc, argv, "aAb:cCf:D:F:Ii:l:m:M:n:r:R:s:S:h:v",
|
||||
+ while ((c = getopt_long(argc, argv, "aAb:cCf:D:F:g:Ii:l:m:M:n:r:R:s:S:h:v",
|
||||
long_options, NULL)) != -1)
|
||||
/* Scan the command line for options */
|
||||
switch (c) {
|
||||
@@ -1396,6 +1399,22 @@ int main(int argc, char **argv)
|
||||
size_fat_by_user = 1;
|
||||
break;
|
||||
|
||||
+ case 'g': /* g : geometry: heads and sectors per track */
|
||||
+ errno = 0;
|
||||
+ conversion = strtol(optarg, &tmp, 0);
|
||||
+ if (!*optarg || isspace(*optarg) || tmp[0] != '/' || !tmp[1] || isspace(tmp[1]) || errno || conversion <= 0 || conversion > UINT16_MAX) {
|
||||
+ printf("Bad format of geometry : %s\n", optarg);
|
||||
+ usage(1);
|
||||
+ }
|
||||
+ bs.heads = htole16(conversion);
|
||||
+ conversion = strtol(tmp+1, &tmp, 0);
|
||||
+ if (*tmp || errno || conversion <= 0 || conversion > UINT16_MAX) {
|
||||
+ printf("Bad format of geometry : %s\n", optarg);
|
||||
+ usage(1);
|
||||
+ }
|
||||
+ bs.secs_track = htole16(conversion);
|
||||
+ break;
|
||||
+
|
||||
case 'h': /* h : number of hidden sectors */
|
||||
hidden_sectors = (int)strtol(optarg, &tmp, 0);
|
||||
if (*tmp || hidden_sectors < 0) {
|
330
dosfstools.changes
Normal file
330
dosfstools.changes
Normal file
|
@ -0,0 +1,330 @@
|
|||
* Tue Dec 21 2021 sbrabec@suse.com
|
||||
- To be able to create filesystems compatible with previous
|
||||
version, add -g command line option to mkfs (boo#1188401,
|
||||
dosfstools-add-g.patch).
|
||||
- BREAKING CHANGES:
|
||||
After fixing of bsc#1172863 in the last update, mkfs started to
|
||||
create different images than before. Applications that depend on
|
||||
exact FAT file format (e. g. embedded systems) may be broken in
|
||||
two ways:
|
||||
* The introduction of the alignment may create smaller images
|
||||
than before, with a different positions of important image
|
||||
elements. It can break existing software that expect images in
|
||||
doststools <= 4.1 style.
|
||||
To work around these problems, use "-a" command line argument.
|
||||
* The new image may contain a different geometry values. Geometry
|
||||
sensitive applications expecting doststools <= 4.1 style images
|
||||
can fails to accept different geometry values.
|
||||
There is no direct work around for this problem. But you can
|
||||
take the old image, use "file -s $IMAGE", check its
|
||||
"sectors/track" and "heads", and use them in the newly
|
||||
introduced "-g" command line argument.
|
||||
* Wed May 26 2021 mcepl@suse.com
|
||||
- Add fix-calculation.patch (gh#dosfstools/dosfstools#153, bsc#1172863)
|
||||
to work with different size of clusters.
|
||||
* Thu Jan 26 2017 mpluskal@suse.com
|
||||
- Update to version 4.1:
|
||||
* Now the default for mkfs for filesystems smaller than 512 MB is
|
||||
64 / 32 sectors
|
||||
* The parsing of octal character specifications for filenames in
|
||||
the -u and -d 25 options of fsck now works.
|
||||
* Fixed a possible fatlabel crash when writing a label to an
|
||||
unlabelled filesystem
|
||||
* Testsuite is now available
|
||||
* Sat May 7 2016 mpluskal@suse.com
|
||||
- Update to 4.0
|
||||
* Switch build system to autotools.
|
||||
* Fixed data corruption errors in fsck.fat Writing to the third
|
||||
to last cluster on FAT12 with an odd number of clusters would
|
||||
corrupt the following cluster.
|
||||
* The automatic alignment of data clusters that was added in
|
||||
3.0.8 and broken for FAT32 starting with 3.0.20 has been
|
||||
reinstated.
|
||||
- Small spec file cleanup
|
||||
- Drop no longer needed dosfstools-suse-dirs.patch
|
||||
* Wed Jun 3 2015 mpluskal@suse.com
|
||||
- Update to 3.0.28
|
||||
* mkfs.fat now allows choosing 0xF0 as the media byte which was
|
||||
previously rejected.
|
||||
* mkfs.fat now supports the --invariant option to facilitate
|
||||
testing mkfs.fat itself.
|
||||
* Bugs fixed in fsck.fat are a read one byte beyond the end of
|
||||
an allocated array when checking some FAT12 filesystems, and
|
||||
checking that the first cluster of a file as specified in the
|
||||
directory entry is not 1.
|
||||
- Cleanup spec file with spec-cleaner
|
||||
* Mon May 11 2015 pgajdos@suse.com
|
||||
- fix url
|
||||
* Fri Jan 16 2015 pgajdos@suse.com
|
||||
- updated to 3.0.27:
|
||||
* fsck.fat: Don't print version string every time -v is
|
||||
encountered
|
||||
* Fix attempt to rename root dir in fsck due to uninitialized
|
||||
fields
|
||||
* Support long file names in volume labeling code
|
||||
- upstream changed
|
||||
* Tue Sep 23 2014 jengelh@inai.de
|
||||
- Drop gpg-offline build-time requirement; this is now handled by
|
||||
the local source validator
|
||||
* Thu Jun 26 2014 pgajdos@suse.com
|
||||
- added fsck.{v,}fat and mkfs.{v,}fat compat symlinks in /sbin
|
||||
[bnc#884516]
|
||||
- call spec-cleaner
|
||||
* Mon Mar 17 2014 pgajdos@suse.com
|
||||
- updated to 3.0.26:
|
||||
* Fix "odd" files created by frequent power-loss.
|
||||
* Thu Mar 6 2014 pgajdos@suse.com
|
||||
- updated to 3.0.25:
|
||||
* Prevent corruption of FAT during fsck on 64 bit platforms.
|
||||
unsigned long is 64 bit on x86-64, which means set_fat was writing two
|
||||
entries, which corrupts the next entry. This can cause loss of data in
|
||||
another file.
|
||||
* Fixed remaining 64 bit build warnings.
|
||||
* Mon Nov 25 2013 pgajdos@suse.com
|
||||
- updated to 3.0.24:
|
||||
* Fixed dosfsck on big endian platforms.
|
||||
* Wed Oct 16 2013 pgajdos@suse.com
|
||||
- updated to 3.0.23:
|
||||
* Corrects clustersize to fix issues with EFI System Partitions.
|
||||
* Mon Jul 29 2013 pgajdos@suse.com
|
||||
- updated to 3.0.22:
|
||||
* Improved boot compatiblity.
|
||||
* Wed Jul 17 2013 pgajdos@suse.com
|
||||
- updated to 3.0.21
|
||||
* Minor miscellaneous cleanups.
|
||||
* Thu Jun 13 2013 jengelh@inai.de
|
||||
- Update to new upstream release 3.0.20
|
||||
* This release updates default sectors per cluster for FAT32.
|
||||
- Remove ppc-reserved-sectors-fix.patch (implemented upstream)
|
||||
(use -a switch to disable aligning structures)
|
||||
- Signature verification; more robust make install call
|
||||
* Wed Jun 12 2013 pgajdos@suse.com
|
||||
- update to 3.0.19:
|
||||
* This release fixes a segfault with fortify.
|
||||
- removed dosfstools-system_id-overflow.patch
|
||||
* Tue Jun 11 2013 pgajdos@suse.com
|
||||
- update to 3.0.18:
|
||||
* Adding initial i18n support for manpages with po4a.
|
||||
* Renaming tools to sane namespace and keeping legacy symlinks in place.
|
||||
| dosfslabel becomes fatlabel,
|
||||
| dosfsck becomes fsck.fat,
|
||||
| and mkdosfs becomes mkfs.fat.
|
||||
* Correcting spelling typo in boot.c.
|
||||
* dosfslabel: Do not read beyond string length (Closes: #709587).
|
||||
- refreshed both dosfstools-suse-dirs.patch and
|
||||
ppc-reserved-sectors-fix.patch
|
||||
- added dosfstools-system_id-overflow.patch
|
||||
* Mon Jun 3 2013 pgajdos@suse.com
|
||||
- update to 3.0.17:
|
||||
* Fixing segfault in dosfslabel.
|
||||
* Allow operation on SH4 CPUs.
|
||||
* Finish cleanup of byteswap code.
|
||||
* Fix offsetof definition.
|
||||
* etc., see ChangeLog
|
||||
- refreshed ppc-reserved-sectors-fix.patch
|
||||
* Mon Mar 25 2013 mmeister@suse.com
|
||||
- Added url as source.
|
||||
Please see http://en.opensuse.org/SourceUrls
|
||||
* Mon Mar 4 2013 pgajdos@suse.com
|
||||
- update to 3.0.16: label fixes
|
||||
* dropped upstreamed
|
||||
- dosfstools-create-rootdir-label.patch
|
||||
- dosfstools-dosfslabel-forbid-lowercase.patch
|
||||
- dosfstools-dosfslabel-from-rootdir.patch
|
||||
- dosfstools-fsck-file-name.patch
|
||||
- dosfstools-mkdosfs-no-label.patch
|
||||
- dosfstools-mkdosfs-uppercase-label.patch
|
||||
* Mon Feb 25 2013 pgajdos@suse.com
|
||||
- update to 3.0.15: bugfixes for device detection, root directory
|
||||
allocation, and messages about unicode filenames.
|
||||
* dropped dosfstools-filename-buffer-overflow.patch (upstreamed)
|
||||
* dropped dosfstools-mdraid-partition.patch (upstreamed)
|
||||
* refreshed dosfstools-suse-dirs.patch
|
||||
* refreshed ppc-reserved-sectors-fix.patch
|
||||
(will be dropped if not upstreamed)
|
||||
* dosfstools-label.patch splitted to:
|
||||
- dosfstools-create-rootdir-label.patch
|
||||
- dosfstools-dosfslabel-forbid-lowercase.patch
|
||||
- dosfstools-dosfslabel-from-rootdir.patch
|
||||
- dosfstools-fsck-file-name.patch
|
||||
- dosfstools-mkdosfs-no-label.patch
|
||||
- dosfstools-mkdosfs-uppercase-label.patch
|
||||
(will be upstreamed or dropped)
|
||||
* Fri Oct 26 2012 dvaleev@suse.com
|
||||
- hack to use just 1 sector for embedded devices. should be made
|
||||
into a flag, but this shouldn't break normal systems ...
|
||||
lunchpad bug (746262)
|
||||
- fixes ppc boot from vfat (in case root on raid,lvm,ext4)
|
||||
* Fri Sep 28 2012 cfarrell@suse.com
|
||||
- license update: GPL-3.0+
|
||||
No indication that the authors restricted the package to GPL-3.0 (i.e.
|
||||
"only"). Accordingly, GPL-3.0+ seems a better choice and is also the
|
||||
choice made by Fedora
|
||||
* Wed Feb 8 2012 rschweikert@suse.com
|
||||
- place binaries in /usr tree (UsrMerge project)
|
||||
* Fri Sep 30 2011 uli@suse.com
|
||||
- cross-build fix: use %%__cc macro
|
||||
* Sun Sep 18 2011 jengelh@medozas.de
|
||||
- Remove redundant tags/sections from specfile
|
||||
(cf. packaging guidelines)
|
||||
- Use %%_smp_mflags for parallel build
|
||||
* Tue Mar 8 2011 pgajdos@suse.cz
|
||||
- fixed fsck.vfat crashing [bnc#677236]
|
||||
* Mon Dec 20 2010 pgajdos@suse.cz
|
||||
- fixed dosfslabel crashing and improved label handling in mkdosfs
|
||||
and dosfslabel [bnc#657011]
|
||||
* Mon Nov 1 2010 pgajdos@suse.cz
|
||||
- fixed:
|
||||
* [bnc#639553] -- mkdosfs now detects md raid partition correctly
|
||||
* [bnc#649046] -- install dosfslabel
|
||||
* spec file cleanup
|
||||
* Mon Sep 13 2010 pgajdos@suse.cz
|
||||
- updated to 3.0.10:
|
||||
* LFN handling and false positives with bad filenames were
|
||||
corrected.
|
||||
* Mon Feb 1 2010 pgajdos@suse.cz
|
||||
- updated to 3.0.9:
|
||||
* A bug in aligning was fixed.
|
||||
* Mon Jan 25 2010 pgajdos@suse.cz
|
||||
- new upstream
|
||||
http://freshmeat.net/projects/dosfstools
|
||||
- updated to 3.0.8
|
||||
- removed upstreamed/obsoleted patches
|
||||
* linuxfs.patch
|
||||
* buffer.patch
|
||||
* o_excl.patch
|
||||
* mkdosfs-geo0.diff
|
||||
* determine-sector-size.patch
|
||||
* unsupported-sector-size.patch
|
||||
* unaligned.patch
|
||||
- major changes:
|
||||
* aligning structures to cluster boundaries,
|
||||
64bit and crosscompile fixes
|
||||
* bugfix in dosfslabel, cleanups for FORTIFY_SOURCE
|
||||
* bugfix in dosfsck on big-endian systems,
|
||||
bugfix in dosfck cluster handling
|
||||
* bugfix and cleanup for VFAT patent avoidance
|
||||
kernel patch
|
||||
* compatible with VFAT patent avoidance kernel
|
||||
patch, bugfix in dosfsck repair mode
|
||||
* supporting limited-memory embedded systems
|
||||
* fixes rare dosfsck corruption
|
||||
* improves dosfsck cluster handling, fixes timing
|
||||
issues
|
||||
* merged patches from various distributions
|
||||
* Tue Nov 3 2009 coolo@novell.com
|
||||
- updated patches to apply with fuzz=0
|
||||
* Tue Jun 24 2008 pgajdos@suse.cz
|
||||
- added warning for creation msdos on filesystem with sector size
|
||||
greater than 4096 [fate#303325] (unsupported-sector-size.patch)
|
||||
* Thu Sep 6 2007 pgajdos@suse.cz
|
||||
- determine sector size of device automatically or if -S parameter
|
||||
present, verify, that it's not under physical sector size
|
||||
(determine-sector-size.patch)
|
||||
* Thu Aug 9 2007 olh@suse.de
|
||||
- remove inclusion of asm/unaligned.h, use private copy of
|
||||
asm-generic/unaligned.h
|
||||
* Thu Apr 26 2007 lnussel@suse.de
|
||||
- remove obsolete subfs patch
|
||||
- fix handling of zero heads and sectors
|
||||
* Wed Apr 4 2007 pgajdos@suse.cz
|
||||
- added Supplements: filesystem(vfat) line to spec file
|
||||
[fate#301966]
|
||||
* Tue Jan 30 2007 prusnak@suse.cz
|
||||
- mkdosfs now opens device with O_EXCL [#238687]
|
||||
* Sat May 27 2006 schwab@suse.de
|
||||
- Don't strip binaries.
|
||||
* Wed Jan 25 2006 mls@suse.de
|
||||
- converted neededforbuild to BuildRequires
|
||||
* Tue Nov 8 2005 dmueller@suse.de
|
||||
- don't build as root
|
||||
* Mon Nov 7 2005 yxu@suse.de
|
||||
- fixed overflowing buffer problem
|
||||
* Mon Apr 11 2005 mcihar@suse.cz
|
||||
- update to 2.11
|
||||
- use sys/mount.h instead of linux/fs.h, this fixes compilation with current GCC
|
||||
* Tue Feb 15 2005 mcihar@suse.cz
|
||||
- deal with subfs (bug #50838)
|
||||
- use /proc/mounts if available for deciding whether device is
|
||||
mounted or not
|
||||
- just issue warning if it is mounted as subfs
|
||||
* Thu Aug 19 2004 mcihar@suse.cz
|
||||
- merged some dosfsck fixes from FreeDOS
|
||||
* Thu Jul 15 2004 schwab@suse.de
|
||||
- Fix unaligned accesses [#40296].
|
||||
* Tue Jun 1 2004 ro@suse.de
|
||||
- avoid inclusion of linux/audit.h
|
||||
* Thu Mar 18 2004 mcihar@suse.cz
|
||||
- fix dosfsck man page (pointed out in bug #34757)
|
||||
* Mon Mar 8 2004 mcihar@suse.cz
|
||||
- fix broken dosfsck (bug #34757)
|
||||
* Thu Jan 29 2004 mcihar@suse.cz
|
||||
- include more documentation
|
||||
* Thu Jan 15 2004 kukuk@suse.de
|
||||
- Make compile with kernel 2.6.1 headers
|
||||
* Thu Oct 23 2003 schwab@suse.de
|
||||
- Don't define llseek to lseek64, creates infinite recursion.
|
||||
* Tue Oct 14 2003 mcihar@suse.cz
|
||||
- install links also for {fsck,mkfs}.vfat + man pages (bug #32284)
|
||||
* Mon Sep 29 2003 mcihar@suse.cz
|
||||
- updated to 2.10:
|
||||
- dosfsck: various 64-bit fixes and removed some warnings by Michal
|
||||
Cihar <mcihar@suse.cz>
|
||||
- mkdosfs: better error message if called without parameters (also
|
||||
suggested by Michal)
|
||||
* Mon Jun 9 2003 mcihar@suse.cz
|
||||
- new upstream version 2.9:
|
||||
* dosfsck: Fix potential for "Internal error: next_cluster on bad cluster".
|
||||
* dosfsck: When clearing long file names, don't overwrite the dir
|
||||
entries with all zeros, but put 0xe5 into the first byte.
|
||||
Otherwise, some OSes stop reading the directory at that point...
|
||||
* dosfsck: in statistics printed by -v, fix 32bit overflow in number
|
||||
of data bytes.
|
||||
* dosfsck: fix an potential overflow in "too many clusters" check
|
||||
* dosfsck: allow FAT size > 32MB.
|
||||
* dosfsck: allow for only one FAT
|
||||
* dosfsck: with -v, also check that last sector of the filesystem can
|
||||
be read (in case a partition is smaller than the fs thinks)
|
||||
- realy working large file support
|
||||
- don't package obsolette documentation
|
||||
* Wed Dec 4 2002 mcihar@suse.cz
|
||||
- don't allow -fPIC on i386 in CFLAGS, even on i386-debug, because
|
||||
this package doesn't build with it
|
||||
* Sun Dec 1 2002 ro@suse.de
|
||||
- include errno.h where needed
|
||||
* Tue Sep 10 2002 mcihar@suse.cz
|
||||
- added -D_FILE_OFFSET_BITS=64 to CFLAGS to support larger files/partitions
|
||||
* Mon May 20 2002 ro@suse.de
|
||||
- extend 64bit ifdefs for new platforms
|
||||
* Fri Mar 1 2002 jantos@suse.cz
|
||||
- Fixed missing files in documentation (bug 13973)
|
||||
* Fri Sep 14 2001 schwab@suse.de
|
||||
- Fix crash if mkdosfs is called without arguments.
|
||||
* Tue May 22 2001 pblaha@suse.cz
|
||||
- fixed include files on ia64
|
||||
* Sun Apr 8 2001 schwab@suse.de
|
||||
- Fix to build on ia64.
|
||||
* Mon Mar 5 2001 pblaha@suse.cz
|
||||
- update on 2.8
|
||||
* Mon Feb 12 2001 ro@suse.de
|
||||
- don't include linux/fs.h
|
||||
* Thu Jan 18 2001 schwab@suse.de
|
||||
- Add Obsoletes: dosfstls.
|
||||
* Wed Jan 17 2001 pblaha@suse.cz
|
||||
- added message "not enough memory to run dosfsck\n"
|
||||
- if not free memory for malloc
|
||||
* Fri Dec 22 2000 pblaha@suse.cz
|
||||
- upgrade on 2.6 and rename on dosfstools
|
||||
* Mon Dec 4 2000 sf@suse.de
|
||||
- corrected patch to compile on Alpha and ia64
|
||||
* Tue Nov 21 2000 uli@suse.de
|
||||
- worked around strncasecmp declaration conflict in mkdosfs.c
|
||||
* Mon Nov 13 2000 ro@suse.de
|
||||
- hacked to compile on 2.4 includes
|
||||
* Thu Nov 2 2000 pblaha@suse.cz
|
||||
- update to version 2.4
|
||||
* Mon Jun 5 2000 schwab@suse.de
|
||||
- Fix llseek on ia64.
|
||||
* Fri Jun 2 2000 bubnikv@suse.cz
|
||||
- new package in SuSE, version 2.2
|
||||
- makes packages dosfsck and mkdosfs obsolette
|
513
dosfstools.keyring
Normal file
513
dosfstools.keyring
Normal file
|
@ -0,0 +1,513 @@
|
|||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
Version: GnuPG v2
|
||||
|
||||
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
|
||||
Zxz8PQg=
|
||||
=N3ZS
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
84
dosfstools.spec
Normal file
84
dosfstools.spec
Normal file
|
@ -0,0 +1,84 @@
|
|||
#
|
||||
# spec file for package dosfstools
|
||||
#
|
||||
# Copyright (c) 2022-2023 ZhuningOS
|
||||
#
|
||||
|
||||
|
||||
Name: dosfstools
|
||||
Version: 4.1
|
||||
Release: 3.6.1
|
||||
Summary: Utilities for Making and Checking MS-DOS FAT File Systems on Linux
|
||||
License: GPL-3.0+
|
||||
Group: System/Filesystems
|
||||
Url: https://github.com/dosfstools/dosfstools
|
||||
Source: https://github.com/dosfstools/dosfstools/releases/download/v%{version}/dosfstools-%{version}.tar.gz
|
||||
Source2: https://github.com/dosfstools/dosfstools/releases/download/v%{version}/dosfstools-%{version}.tar.gz.sig
|
||||
Source3: %{name}.keyring
|
||||
# PATCH-FIX-UPSTREAM fix-calculation.patch gh#dosfstools/dosfstools#153 mcepl@suse.com
|
||||
# Fix calculation of sectors and clusters
|
||||
Patch0: fix-calculation.patch
|
||||
# PATCH-FEATURE-UPSTREAM dosfstools-add-g.patch boo1188401 sbrabec@suse.com -- To be able to create filesystems compatible with previous version, add -g command line option.
|
||||
Patch1: dosfstools-add-g.patch
|
||||
# xxd from vim is required for testsuite
|
||||
BuildRequires: pkgconfig
|
||||
BuildRequires: vim
|
||||
BuildRequires: automake
|
||||
BuildRequires: pkgconfig(libudev)
|
||||
Supplements: filesystem(vfat)
|
||||
Provides: dosfsck
|
||||
Provides: mkdosfs
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
|
||||
%description
|
||||
The dosfstools package includes the mkdosfs and dosfsck utilities, which
|
||||
respectively make and check MS-DOS FAT file systems on hard drives or on
|
||||
floppies.
|
||||
|
||||
%prep
|
||||
%autosetup -p1
|
||||
|
||||
%build
|
||||
%configure \
|
||||
--docdir=%{_docdir}/dosfstools \
|
||||
--enable-compat-symlinks
|
||||
make %{?_smp_mflags} CFLAGS="%{optflags} -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
|
||||
|
||||
%install
|
||||
%make_install
|
||||
#UsrMerge
|
||||
mkdir %{buildroot}/sbin
|
||||
ln -sf %{_sbindir}/{dosfsck,dosfslabel,mkdosfs,fsck.msdos,mkfs.msdos,fsck.fat,fsck.vfat,mkfs.fat,mkfs.vfat} %{buildroot}/sbin
|
||||
#EndUsrMerge
|
||||
|
||||
%check
|
||||
make check
|
||||
|
||||
%files
|
||||
%defattr(-,root,root)
|
||||
%doc %{_docdir}/dosfstools
|
||||
#UsrMerge
|
||||
/sbin/*
|
||||
#EndUsrMerge
|
||||
%{_sbindir}/dosfsck
|
||||
%{_sbindir}/dosfslabel
|
||||
%{_sbindir}/fatlabel
|
||||
%{_sbindir}/fsck.fat
|
||||
%{_sbindir}/fsck.msdos
|
||||
%{_sbindir}/fsck.vfat
|
||||
%{_sbindir}/mkdosfs
|
||||
%{_sbindir}/mkfs.fat
|
||||
%{_sbindir}/mkfs.msdos
|
||||
%{_sbindir}/mkfs.vfat
|
||||
%{_mandir}/man8/dosfsck.8%{ext_man}
|
||||
%{_mandir}/man8/dosfslabel.8%{ext_man}
|
||||
%{_mandir}/man8/fatlabel.8%{ext_man}
|
||||
%{_mandir}/man8/fsck.fat.8%{ext_man}
|
||||
%{_mandir}/man8/fsck.msdos.8%{ext_man}
|
||||
%{_mandir}/man8/fsck.vfat.8%{ext_man}
|
||||
%{_mandir}/man8/mkdosfs.8%{ext_man}
|
||||
%{_mandir}/man8/mkfs.fat.8%{ext_man}
|
||||
%{_mandir}/man8/mkfs.msdos.8%{ext_man}
|
||||
%{_mandir}/man8/mkfs.vfat.8%{ext_man}
|
||||
|
||||
%changelog
|
341
fix-calculation.patch
Normal file
341
fix-calculation.patch
Normal file
|
@ -0,0 +1,341 @@
|
|||
From b29eb5be67e9e8a06908ee10f6c205cb609b1021 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Pali=20Roh=C3=A1r?= <pali.rohar@gmail.com>
|
||||
Date: Wed, 15 Aug 2018 15:15:06 +0200
|
||||
Subject: [PATCH 1/7] mkfs.fat: Align total number of sectors to be multiple of
|
||||
sectors per track
|
||||
|
||||
This requirement is needed by DOS systems and also by Linux mtools project.
|
||||
Without proper alignment, mtools applications refuse to work on such
|
||||
filesystem.
|
||||
---
|
||||
configure.ac | 2
|
||||
src/mkfs.fat.c | 119 ++++++++++++++++++++++-------------------------
|
||||
tests/Makefile.am | 3 -
|
||||
tests/mkfs-fat32_4K.mkfs | 3 +
|
||||
tests/mkfs-fat32_4K.xxd | 63 ++++++++++++++++++++++++
|
||||
tests/referenceFAT32.xxd | 5 +
|
||||
6 files changed, 132 insertions(+), 63 deletions(-)
|
||||
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -16,7 +16,7 @@
|
||||
|
||||
AC_INIT([dosfstools], [4.1])
|
||||
AC_SUBST([RELEASE_DATE], [2017-01-24])
|
||||
-AM_INIT_AUTOMAKE([1.11 foreign subdir-objects parallel-tests])
|
||||
+AM_INIT_AUTOMAKE([1.15.1 foreign subdir-objects parallel-tests])
|
||||
|
||||
AC_ARG_ENABLE([compat-symlinks],
|
||||
[AS_HELP_STRING([--enable-compat-symlinks],
|
||||
--- a/src/mkfs.fat.c
|
||||
+++ b/src/mkfs.fat.c
|
||||
@@ -7,6 +7,7 @@
|
||||
Copyright (C) 1998-2005 Roman Hodek <Roman.Hodek@informatik.uni-erlangen.de>
|
||||
Copyright (C) 2008-2014 Daniel Baumann <mail@daniel-baumann.ch>
|
||||
Copyright (C) 2015-2016 Andreas Bombe <aeb@debian.org>
|
||||
+ Copyright (C) 2018 Pali Rohár <pali.rohar@gmail.com>
|
||||
|
||||
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
|
||||
@@ -107,14 +108,26 @@ static inline int cdiv(int a, int b)
|
||||
|
||||
#define BOOT_SIGN 0xAA55 /* Boot sector magic number */
|
||||
|
||||
-#define MAX_CLUST_12 ((1 << 12) - 16)
|
||||
-#define MAX_CLUST_16 ((1 << 16) - 16)
|
||||
-#define MIN_CLUST_32 65529
|
||||
+/* According to Microsoft FAT specification (fatgen103.doc) disk with
|
||||
+ * 4085 clusters (or more) is FAT16, but Microsoft Windows FAT driver
|
||||
+ * fastfat.sys detects disk with less then 4087 clusters as FAT12.
|
||||
+ * Linux FAT drivers msdos.ko and vfat.ko detect disk with at least
|
||||
+ * 4085 clusters as FAT16, therefore for compatibility reasons with
|
||||
+ * both systems disallow formatting disks to 4085 or 4086 clusters. */
|
||||
+#define MAX_CLUST_12 4084
|
||||
+#define MIN_CLUST_16 4087
|
||||
+
|
||||
+/* According to Microsoft FAT specification (fatgen103.doc) disk with
|
||||
+ * 65525 clusters (or more) is FAT32, but Microsoft Windows FAT driver
|
||||
+ * fastfat.sys, Linux FAT drivers msdos.ko and vfat.ko detect disk as
|
||||
+ * FAT32 when Sectors Per FAT (fat_length) is set to zero. And not by
|
||||
+ * number of clusters. Still there is cluster upper limit for FAT16. */
|
||||
+#define MAX_CLUST_16 65524
|
||||
+#define MIN_CLUST_32 65525
|
||||
+
|
||||
/* M$ says the high 4 bits of a FAT32 FAT entry are reserved and don't belong
|
||||
* to the cluster number. So the max. cluster# is based on 2^28 */
|
||||
-#define MAX_CLUST_32 ((1 << 28) - 16)
|
||||
-
|
||||
-#define FAT12_THRESHOLD 4085
|
||||
+#define MAX_CLUST_32 268435446
|
||||
|
||||
#define OLDGEMDOS_MAX_SECTORS 32765
|
||||
#define GEMDOS_MAX_SECTORS 65531
|
||||
@@ -588,13 +601,12 @@ static void establish_params(struct devi
|
||||
* fs size <= 16G: 8k clusters
|
||||
* fs size <= 32G: 16k clusters
|
||||
* fs size > 32G: 32k clusters
|
||||
- *
|
||||
- * This only works correctly for 512 byte sectors!
|
||||
*/
|
||||
- uint32_t sz_mb = info->size / (1024 * 1024);
|
||||
- cluster_size =
|
||||
- sz_mb > 32 * 1024 ? 64 : sz_mb > 16 * 1024 ? 32 : sz_mb >
|
||||
- 8 * 1024 ? 16 : sz_mb > 260 ? 8 : 1;
|
||||
+ unsigned long long int sectors = info->size / sector_size;
|
||||
+ cluster_size = sectors > 32*1024*1024*2 ? 64 :
|
||||
+ sectors > 16*1024*1024*2 ? 32 :
|
||||
+ sectors > 8*1024*1024*2 ? 16 :
|
||||
+ sectors > 260*1024*2 ? 8 : 1;
|
||||
}
|
||||
|
||||
if (info->geom_heads > 0) {
|
||||
@@ -733,6 +745,9 @@ static void setup_tables(void)
|
||||
(long long)(blocks * BLOCK_SIZE / sector_size) + orphaned_sectors;
|
||||
}
|
||||
|
||||
+ /* Align number of sectors to be multiple of sectors per track, needed by DOS and mtools */
|
||||
+ num_sectors = num_sectors / le16toh(bs.secs_track) * le16toh(bs.secs_track);
|
||||
+
|
||||
if (!atari_format) {
|
||||
unsigned fatdata1216; /* Sectors for FATs + data area (FAT12/16) */
|
||||
unsigned fatdata32; /* Sectors for FATs + data area (FAT32) */
|
||||
@@ -781,13 +796,13 @@ static void setup_tables(void)
|
||||
maxclust12 = (fatlength12 * 2 * sector_size) / 3;
|
||||
if (maxclust12 > MAX_CLUST_12)
|
||||
maxclust12 = MAX_CLUST_12;
|
||||
- if (verbose >= 2)
|
||||
- printf("FAT12: #clu=%u, fatlen=%u, maxclu=%u, limit=%u\n",
|
||||
+ if (verbose >= 2 && (size_fat == 0 || size_fat == 12))
|
||||
+ printf("Trying FAT12: #clu=%u, fatlen=%u, maxclu=%u, limit=%u\n",
|
||||
clust12, fatlength12, maxclust12, MAX_CLUST_12);
|
||||
- if (clust12 > maxclust12 - 2) {
|
||||
+ if (clust12 > maxclust12) {
|
||||
clust12 = 0;
|
||||
- if (verbose >= 2)
|
||||
- printf("FAT12: too much clusters\n");
|
||||
+ if (verbose >= 2 && (size_fat == 0 || size_fat == 12))
|
||||
+ printf("Trying FAT12: too much clusters\n");
|
||||
}
|
||||
|
||||
clust16 = ((long long)fatdata1216 * sector_size + nr_fats * 4) /
|
||||
@@ -801,20 +816,19 @@ static void setup_tables(void)
|
||||
maxclust16 = (fatlength16 * sector_size) / 2;
|
||||
if (maxclust16 > MAX_CLUST_16)
|
||||
maxclust16 = MAX_CLUST_16;
|
||||
- if (verbose >= 2)
|
||||
- printf("FAT16: #clu=%u, fatlen=%u, maxclu=%u, limit=%u\n",
|
||||
- clust16, fatlength16, maxclust16, MAX_CLUST_16);
|
||||
- if (clust16 > maxclust16 - 2) {
|
||||
- if (verbose >= 2)
|
||||
- printf("FAT16: too much clusters\n");
|
||||
+ if (verbose >= 2 && (size_fat == 0 || size_fat == 16))
|
||||
+ printf("Trying FAT16: #clu=%u, fatlen=%u, maxclu=%u, limit=%u/%u\n",
|
||||
+ clust16, fatlength16, maxclust16, MIN_CLUST_16, MAX_CLUST_16);
|
||||
+ if (clust16 > maxclust16) {
|
||||
+ if (verbose >= 2 && (size_fat == 0 || size_fat == 16))
|
||||
+ printf("Trying FAT16: too much clusters\n");
|
||||
clust16 = 0;
|
||||
}
|
||||
- /* The < 4078 avoids that the filesystem will be misdetected as having a
|
||||
+ /* This avoids that the filesystem will be misdetected as having a
|
||||
* 12 bit FAT. */
|
||||
- if (clust16 < FAT12_THRESHOLD
|
||||
- && !(size_fat_by_user && size_fat == 16)) {
|
||||
- if (verbose >= 2)
|
||||
- printf("FAT16: would be misdetected as FAT12\n");
|
||||
+ if (clust16 && clust16 < MIN_CLUST_16) {
|
||||
+ if (verbose >= 2 && (size_fat == 0 || size_fat == 16))
|
||||
+ printf("Trying FAT16: not enough clusters, would be misdetected as FAT12\n");
|
||||
clust16 = 0;
|
||||
}
|
||||
|
||||
@@ -829,19 +843,20 @@ static void setup_tables(void)
|
||||
maxclust32 = (fatlength32 * sector_size) / 4;
|
||||
if (maxclust32 > MAX_CLUST_32)
|
||||
maxclust32 = MAX_CLUST_32;
|
||||
- if (clust32 && clust32 < MIN_CLUST_32
|
||||
- && !(size_fat_by_user && size_fat == 32)) {
|
||||
+ if (verbose >= 2 && (size_fat == 0 || size_fat == 32))
|
||||
+ printf("Trying FAT32: #clu=%u, fatlen=%u, maxclu=%u, limit=%u/%u\n",
|
||||
+ clust32, fatlength32, maxclust32, MIN_CLUST_32, MAX_CLUST_32);
|
||||
+ if (clust32 > maxclust32) {
|
||||
+ if (verbose >= 2 && (size_fat == 0 || size_fat == 32))
|
||||
+ printf("Trying FAT32: too much clusters\n");
|
||||
clust32 = 0;
|
||||
- if (verbose >= 2)
|
||||
- printf("FAT32: not enough clusters (%d)\n", MIN_CLUST_32);
|
||||
}
|
||||
- if (verbose >= 2)
|
||||
- printf("FAT32: #clu=%u, fatlen=%u, maxclu=%u, limit=%u\n",
|
||||
- clust32, fatlength32, maxclust32, MAX_CLUST_32);
|
||||
- if (clust32 > maxclust32) {
|
||||
+ /* When explicitely asked, allow to create FAT32 with less then MIN_CLUST_32 */
|
||||
+ if (clust32 && clust32 < MIN_CLUST_32
|
||||
+ && !(size_fat_by_user && size_fat == 32)) {
|
||||
+ if (verbose >= 2 && (size_fat == 0 || size_fat == 32))
|
||||
+ printf("Trying FAT32: not enough clusters\n");
|
||||
clust32 = 0;
|
||||
- if (verbose >= 2)
|
||||
- printf("FAT32: too much clusters\n");
|
||||
}
|
||||
|
||||
if ((clust12 && (size_fat == 0 || size_fat == 12)) ||
|
||||
@@ -869,23 +884,6 @@ static void setup_tables(void)
|
||||
break;
|
||||
|
||||
case 16:
|
||||
- if (clust16 < FAT12_THRESHOLD) {
|
||||
- if (size_fat_by_user) {
|
||||
- fprintf(stderr, "WARNING: Not enough clusters for a "
|
||||
- "16 bit FAT! The filesystem will be\n"
|
||||
- "misinterpreted as having a 12 bit FAT without "
|
||||
- "mount option \"fat=16\".\n");
|
||||
- } else {
|
||||
- fprintf(stderr, "This filesystem has an unfortunate size. "
|
||||
- "A 12 bit FAT cannot provide\n"
|
||||
- "enough clusters, but a 16 bit FAT takes up a little "
|
||||
- "bit more space so that\n"
|
||||
- "the total number of clusters becomes less than the "
|
||||
- "threshold value for\n"
|
||||
- "distinction between 12 and 16 bit FATs.\n");
|
||||
- die("Make the filesystem a bit smaller manually.");
|
||||
- }
|
||||
- }
|
||||
cluster_count = clust16;
|
||||
fat_length = fatlength16;
|
||||
bs.fat_length = htole16(fatlength16);
|
||||
@@ -894,8 +892,7 @@ static void setup_tables(void)
|
||||
|
||||
case 32:
|
||||
if (clust32 < MIN_CLUST_32)
|
||||
- fprintf(stderr,
|
||||
- "WARNING: Not enough clusters for a 32 bit FAT!\n");
|
||||
+ fprintf(stderr, "WARNING: Number of clusters for 32 bit FAT is less then suggested minimum.\n");
|
||||
cluster_count = clust32;
|
||||
fat_length = fatlength32;
|
||||
bs.fat_length = htole16(0);
|
||||
@@ -1053,9 +1050,9 @@ static void setup_tables(void)
|
||||
|
||||
if (!cluster_count) {
|
||||
if (sectors_per_cluster) /* If yes, die if we'd spec'd sectors per cluster */
|
||||
- die("Too many clusters for filesystem - try more sectors per cluster");
|
||||
+ die("Not enough or too many clusters for filesystem - try less or more sectors per cluster");
|
||||
else
|
||||
- die("Attempting to create a too large filesystem");
|
||||
+ die("Attempting to create a too small or a too large filesystem");
|
||||
}
|
||||
fat_entries = cluster_count + 2;
|
||||
|
||||
@@ -1076,8 +1073,8 @@ static void setup_tables(void)
|
||||
(le16toh(bs.secs_track) != 1) ? "s" : "");
|
||||
printf("hidden sectors 0x%04x;\n", hidden_sectors);
|
||||
printf("logical sector size is %d,\n", sector_size);
|
||||
- printf("using 0x%02x media descriptor, with %d sectors;\n",
|
||||
- (int)(bs.media), num_sectors);
|
||||
+ printf("using 0x%02x media descriptor, with %u sectors;\n",
|
||||
+ (int)(bs.media), (unsigned)num_sectors);
|
||||
printf("drive number 0x%02x;\n", (int) (vi->drive_number));
|
||||
printf("filesystem has %d %d-bit FAT%s and %d sector%s per cluster.\n",
|
||||
(int)(bs.fats), size_fat, (bs.fats != 1) ? "s" : "",
|
||||
--- a/tests/Makefile.am
|
||||
+++ b/tests/Makefile.am
|
||||
@@ -6,7 +6,6 @@ endif
|
||||
|
||||
TESTS = referenceFAT12.mkfs \
|
||||
referenceFAT16.mkfs \
|
||||
- referenceFAT32.mkfs \
|
||||
check-bad_names.fsck \
|
||||
check-chain_to_free_cluster.fsck \
|
||||
check-chain_too_long.fsck \
|
||||
@@ -28,6 +27,8 @@ dist_check_DATA = test-mkfs test-fsck
|
||||
referenceFAT16.xxd \
|
||||
referenceFAT32.mkfs \
|
||||
referenceFAT32.xxd \
|
||||
+ mkfs-fat32_4K.mkfs \
|
||||
+ mkfs-fat32_4K.xxd \
|
||||
check-bad_names.fsck \
|
||||
check-chain_to_free_cluster.fsck \
|
||||
check-chain_too_long.fsck \
|
||||
--- /dev/null
|
||||
+++ b/tests/mkfs-fat32_4K.mkfs
|
||||
@@ -0,0 +1,3 @@
|
||||
+ARGS="-n TEST4K -S 4096"
|
||||
+SIZE=614400
|
||||
+CMP_LIMIT=10M
|
||||
--- /dev/null
|
||||
+++ b/tests/mkfs-fat32_4K.xxd
|
||||
@@ -0,0 +1,63 @@
|
||||
+00000000: eb58 906d 6b66 732e 6661 7400 1001 2000 .X.mkfs.fat... .
|
||||
+00000010: 0200 0000 00f8 0000 2000 0800 0000 0000 ........ .......
|
||||
+00000020: 0058 0200 9600 0000 0000 0000 0200 0000 .X..............
|
||||
+00000030: 0100 0600 0000 0000 0000 0000 0000 0000 ................
|
||||
+00000040: 8000 29cd ab34 1254 4553 5434 4b20 2020 ..)..4.TEST4K
|
||||
+00000050: 2020 4641 5433 3220 2020 0e1f be77 7cac FAT32 ...w|.
|
||||
+00000060: 22c0 740b 56b4 0ebb 0700 cd10 5eeb f032 ".t.V.......^..2
|
||||
+00000070: e4cd 16cd 19eb fe54 6869 7320 6973 206e .......This is n
|
||||
+00000080: 6f74 2061 2062 6f6f 7461 626c 6520 6469 ot a bootable di
|
||||
+00000090: 736b 2e20 2050 6c65 6173 6520 696e 7365 sk. Please inse
|
||||
+000000a0: 7274 2061 2062 6f6f 7461 626c 6520 666c rt a bootable fl
|
||||
+000000b0: 6f70 7079 2061 6e64 0d0a 7072 6573 7320 oppy and..press
|
||||
+000000c0: 616e 7920 6b65 7920 746f 2074 7279 2061 any key to try a
|
||||
+000000d0: 6761 696e 202e 2e2e 200d 0a00 0000 0000 gain ... .......
|
||||
+000000e0: 0000 0000 0000 0000 0000 0000 0000 0000 ................
|
||||
+*
|
||||
+000001f0: 0000 0000 0000 0000 0000 0000 0000 55aa ..............U.
|
||||
+00000200: 0000 0000 0000 0000 0000 0000 0000 0000 ................
|
||||
+*
|
||||
+00001000: 5252 6141 0000 0000 0000 0000 0000 0000 RRaA............
|
||||
+00001010: 0000 0000 0000 0000 0000 0000 0000 0000 ................
|
||||
+*
|
||||
+000011e0: 0000 0000 7272 4161 b356 0200 0200 0000 ....rrAa.V......
|
||||
+000011f0: 0000 0000 0000 0000 0000 0000 0000 55aa ..............U.
|
||||
+00001200: 0000 0000 0000 0000 0000 0000 0000 0000 ................
|
||||
+*
|
||||
+00006000: eb58 906d 6b66 732e 6661 7400 1001 2000 .X.mkfs.fat... .
|
||||
+00006010: 0200 0000 00f8 0000 2000 0800 0000 0000 ........ .......
|
||||
+00006020: 0058 0200 9600 0000 0000 0000 0200 0000 .X..............
|
||||
+00006030: 0100 0600 0000 0000 0000 0000 0000 0000 ................
|
||||
+00006040: 8000 29cd ab34 1254 4553 5434 4b20 2020 ..)..4.TEST4K
|
||||
+00006050: 2020 4641 5433 3220 2020 0e1f be77 7cac FAT32 ...w|.
|
||||
+00006060: 22c0 740b 56b4 0ebb 0700 cd10 5eeb f032 ".t.V.......^..2
|
||||
+00006070: e4cd 16cd 19eb fe54 6869 7320 6973 206e .......This is n
|
||||
+00006080: 6f74 2061 2062 6f6f 7461 626c 6520 6469 ot a bootable di
|
||||
+00006090: 736b 2e20 2050 6c65 6173 6520 696e 7365 sk. Please inse
|
||||
+000060a0: 7274 2061 2062 6f6f 7461 626c 6520 666c rt a bootable fl
|
||||
+000060b0: 6f70 7079 2061 6e64 0d0a 7072 6573 7320 oppy and..press
|
||||
+000060c0: 616e 7920 6b65 7920 746f 2074 7279 2061 any key to try a
|
||||
+000060d0: 6761 696e 202e 2e2e 200d 0a00 0000 0000 gain ... .......
|
||||
+000060e0: 0000 0000 0000 0000 0000 0000 0000 0000 ................
|
||||
+*
|
||||
+000061f0: 0000 0000 0000 0000 0000 0000 0000 55aa ..............U.
|
||||
+00006200: 0000 0000 0000 0000 0000 0000 0000 0000 ................
|
||||
+*
|
||||
+00007000: 5252 6141 0000 0000 0000 0000 0000 0000 RRaA............
|
||||
+00007010: 0000 0000 0000 0000 0000 0000 0000 0000 ................
|
||||
+*
|
||||
+000071e0: 0000 0000 7272 4161 b356 0200 0200 0000 ....rrAa.V......
|
||||
+000071f0: 0000 0000 0000 0000 0000 0000 0000 55aa ..............U.
|
||||
+00007200: 0000 0000 0000 0000 0000 0000 0000 0000 ................
|
||||
+*
|
||||
+00020000: f8ff ff0f ffff ff0f f8ff ff0f 0000 0000 ................
|
||||
+00020010: 0000 0000 0000 0000 0000 0000 0000 0000 ................
|
||||
+*
|
||||
+000b6000: f8ff ff0f ffff ff0f f8ff ff0f 0000 0000 ................
|
||||
+000b6010: 0000 0000 0000 0000 0000 0000 0000 0000 ................
|
||||
+*
|
||||
+0014c000: 5445 5354 344b 2020 2020 2008 0000 5a4b TEST4K ...ZK
|
||||
+0014c010: 6e46 6e46 0000 5a4b 6e46 0000 0000 0000 nFnF..ZKnF......
|
||||
+0014c020: 0000 0000 0000 0000 0000 0000 0000 0000 ................
|
||||
+*
|
||||
+257ffff0: 0000 0000 0000 0000 0000 0000 0000 0000 ................
|
||||
--- a/tests/referenceFAT32.xxd
|
||||
+++ b/tests/referenceFAT32.xxd
|
||||
@@ -52,3 +52,8 @@
|
||||
001f8020: 0000 0000 0000 0000 0000 0000 0000 0000 ................
|
||||
*
|
||||
3e7ffff0: 0000 0000 0000 0000 0000 0000 0000 0000 ................
|
||||
+001f8000: 5445 5354 4641 5433 3220 2008 0000 5a4b TESTFAT32 ...ZK
|
||||
+001f8010: 6e46 6e46 0000 5a4b 6e46 0000 0000 0000 nFnF..ZKnF......
|
||||
+001f8020: 0000 0000 0000 0000 0000 0000 0000 0000 ................
|
||||
+*
|
||||
+3e7ffff0: 0000 0000 0000 0000 0000 0000 0000 0000 ................
|
Loading…
Add table
Reference in a new issue