2 - Make sure case byte is cleared when making the special
3 directory entries "." and ".."
5 - Removed mclasserase commands, which doesn't fit the coding
6 structure of the rest of mtools
7 - Add support to -i option to mcd
8 - Document -i in mtools.1
9 - Fix a missing command error in floppyd_io.c
12 - Fix error status of recursive listing of empty root directory
13 - If recursive listing, also show matched files at level one
14 - Use "seekless" reads & write internally, where possible
15 - Text mode conversion refactoring
19 - Fix cluster padding at end of file in batch mode, and add
20 comments about what happens here
26 - Fix support for partitions (broken in 4.0.30)
27 - Portability fixes for Solaris 10 and 11
28 - General simplification of configure script, and largefile handling
29 - Tested and fixed for platforms *without* largefile support
30 - In cases where lseek works with 32-bit offsets, prefer
32 - Fixed floppy sector size handling on platforms that are not
34 - Added support for image files on command line to mcat
37 - Simplify algorithm that choses filesystem parameters for
38 format, and align it more closely with what Win7 does
39 - Fix mformatting XDF when XDF not explicitly specified on
41 - easier way to enter sizes on mformat command line (mformat -C -T
43 - For small sizes, mformat assumes floppy geometries (heads 1 or 2,
45 - Handle attempts to mformat too small filesystems more gracefully
46 - Enable minfo to print out additional mformat command line
47 parameters, if the present filesystem uses non-default
49 - minfo no longer prints bigsect if smallsect is set
50 - for remap filter, error when trying to write non-zero data
52 - Fix misc compilation warnings occuring when disabling
53 certain features (largefiles, raw-term)
56 - Move Linux-specific block device sizing code into
57 linux-specific section of devices.c
58 - Error messages for all failure cases on fs_init failure
59 - Fix compilation without XDF support (OpenImage signature)
60 - Fix polarity of format_xdf command-line parameter of mformat
61 - In XDF_IO retry enough times to actually succeed, even if
62 FDC was in a bad state before
63 - Remove useless buffer flushing triggered when giving up a
64 reference to a stream node that is still referenced
66 - Clearer error message if neither size nor geometry of drive
67 to be mformatted is known
68 - In mformat, make Fs dynamically allocated rather than
69 on-stack, so as to be able to use utilities supplied by
71 - Remove duplicate writing of backup boot sector
72 - Allow to infer geometry if only size is specified
73 - Protect against attempt to create zero-sized buffer
74 - Code simplification in mattrib
75 - Remove dead code in mpartition
78 - Fixed XDF floppy disk access
79 - Fixed faulty behavior at end of image in mcat
80 - Device/Image size handling refactoring
81 - allow remap to write to zero-backed sectors (may happen if
82 buffer is flushed, and is not an error in that case)
83 - Raise an error when trying to mcopy multiple source files
84 over a single destination file (rather than directory)
85 - fix handling of "hidden" sectors (is a 2 byte quantity on
86 small disks, not 4 byte as previously assumed)
87 - Modernize partition support. Tuned consistency check to
88 actually check about important issues (such as overlapping
89 partitions) rather than stuff nobody else cares about
90 (alignment on entire cylinder boundaries)
91 - Move various "filter" options (partition, offset, swap,
92 scsi) into separate classes, rather than leaving almost
93 everything in plain_io
94 - Simplify and centralize geometry handling and LBA code
95 - Fix some more more compiler warnings
97 - Fix bug in cluster preallocation, which was accidentally introduced
98 by compiler warning "fixes" from v4_0_28
100 - Support remapping of data (for not-quite linear floppy image files)
101 - Re-open floppy devices read-write if geometry parameters need to
103 - relax consistency checks in mpartition (partitions created
104 by current fdisk would almost never pass these checks)
105 - Fix some compiler warnings
107 - Fix type error in calls to iconv functions
109 - Fix compilation on Macintosh
110 - Ignore image file locking errors if we are performing a
111 read-only access anyways
112 - Minor man-page fixes
114 - Preserve non-updated contents of info sector, just in case
115 it contains program code
116 - When parsing config file, always use "C" locale for
117 case-insensitive comparisons
119 - Spelling fixes in documentation
120 - Permit calling "make install" with >= -j2
121 - Added AC_SYS_LARGEFILE, needed for compiling on certain ARM procs
123 - Address lots of compiler warnings (assignments between different types)
124 - Network speedup fixes for floppyd (TCP_CORK)
126 - Explicitly pass available target buffer size for character
129 - Fixed -f flag for mformat (size is KBytes, rather than sectors)
130 - Fixed toupper/tolower usage (unsigned char rather than plain signed)
132 - Fixed compilation for MingW
133 - After MingW compilation, make sure executable has .exe extension
134 - Addressed compiler warnings
135 - Fixed length handling in character set conversion (Unicode file names)
136 - Fixed matching of character range, when containing Unicode
137 characters (mdir "c:test[α-ω].exe")
138 - Fixed initialization of my_scsi_cmd constructor
140 - initialize directory entries to 0
141 - bad message "Too few sectors" replaced with "Too many sectors"
142 - apostrophe in mlabel no longer causes generation of long entry
143 - option to fake system date for file creation using the
144 SOURCE_DATE_EPOCH environment variables
146 - can now be compiled with "clang" compiler
147 - fallback function for strndup, for those platforms that don't have it
148 - fixed a number of -Wextra warnings
150 - new compressed archive formats for uz/lz
152 - allow to specify number of reserved sectors for FAT32.
153 - file/device locking with timeout (rather than immediate failure)
154 - fixed support for BPB-less legacy formats.
155 - removed check that disk must be an integer number of tracks.
157 - removed .eh/.oh macros from manual pages
159 - Fix for short file names starting with character 0xE5
160 (by remapping it to 0x5)
161 - mpartition: Partition types closer to what Microsoft uses
162 - mformat: figure out LBA geometry as last resort if geometry
163 is neither specified in config and/or commandline, nor can be
164 queried from the device
165 - mformat: use same default cluster size by size as Microsoft
167 - additional sanity checks
168 - document how cluster size is picked in mformat.c man page
169 - document how partition types are picked in mpartition.c man page
171 Fix for names of iconv encodings on AIX
172 Fix mt_size_t on NetBSD
173 Fixed compilation on Mingw
174 Fixed doc (especially mformat)
175 Fix mformat'ing of FAT12 filesystems with huge cluster sizes
176 Minfo prints image file name in mformat command line if an image
178 Always generate gzip-compressed RPMs, in order to remain
179 compatible with older distributions
180 Fixed buffer overflow with drive letter in mclasserase
182 mbadblocks now takes a list of bad blocks (either as sectors
184 mbadblocks now is able to do write scanning for bad blocks
185 mshowfat can show cluster of specific offset
186 Enable mtools to deal with very small sector sizes...
187 Fixed encoding of all-lowercase names (no need to mangle
189 Consider every directory entry after an ENDMARK (0x00) to be deleted
190 After writing a new entry at end of a directory, be sure to also add
193 Deal with possibility of a NULL pointer being returned by
194 localtime during timestamp conversion
197 fixed formatting of fat_size_calculation.tex document
198 compatibility with current autoconfig versions
199 Make it clear that label is limited to 11 characters
200 Fixed typo in initialization of FAT32 info sector
202 Added missing -i option to mshortname
203 Split .deb package into mtools and floppyd in order to
206 New mshortname command
207 Fix floppyd for disks bigger than 2 Gig
208 Remove obsolete -z flag
209 Remove now unsupported AC_USE_SYSTEM_EXTENSIONS
210 Fixed output formatting of mdir if MTOOLS_DOTTED_DIR is set
211 Mformat now correctly writes backup boot sector
212 Fixed signedness of serial number in mlabel
213 Fixed buffer size problem in mlabel
214 Make mlabel write backup boot sector if FAT32
215 Catch situation where both clear and new label are given to mlabel
216 Quote filename parameters to scripts
217 Mformat: Close file descriptor for boot sector
218 Added lzip support to scripts/uz
219 Added Tot_sectors option to mformat
220 Fixed hidden sector handling in mformat
221 Minfo generates mformat command lines containing new -T option
222 Mlabel prints error if label too long
224 Merged Debian patches
226 Mingw compatibility fixes
228 Fixed compiler warnings in mlabel.c and elsewhere
229 Fixed h flag in mattrib.c
230 Added missing error checking in floppyd and elsewhere
233 More copyright stuff...
234 Fixed issues with max filesize (was 2GB instead of 4GB, and
235 warned only after copying the beginning)
239 Corrected copyright attributions in the various files
241 Fixed conversion to native on OS/2
242 Fix parsing of --help flag
244 Fallback for missing wchar_t iconv codepage on OS/2
245 Fixes for LSEEK64 support
246 Support for --help that returns a 0 exit status
248 Make setpgrp() usage in floppyd conditional
249 Re-instate PACKED around structure (ARM)
253 BSD support: SCSI, use getuserid/getgroupid in floppyd
254 Another attempt at putwc fix for OS/2
256 Fallback for putwc if there is wchar (OS/2)
258 Fix multipart pathname parsing bug in vfat.c (forgot limited length)
259 Supplied fallback define for putwc
260 Copyright notices in all sources
262 Off-by-2 error in unix_name in file_name.c
264 Missing functions on Solaris
266 Offset for -i-specified image files
268 Use transliteration to represent characters which don't exist in
271 Mtools-4 with Unicode support
275 Fixed security issue with doctored file names
276 64 bit compilation fixes
278 Fixed misc blunders...
280 Fixed lots of minor items raised by gcc4
281 Merged some of the BSD patches
282 New version of amuFormat.sh written in sh rather than csh
283 Support for config parameters after -i file
286 Added sizecode printing on minfo
287 In mformat manpage, use same flag for sector number than printed in
289 Limit sizecode to 6, else it will overflow max sector size defined in
292 Applied mingw patch by Jamey Sharp and Josh Triplett
294 Fixed doc about /etc/default
296 Fixed mlabel on read-only disks
298 Merged Redhat/Fedora patches
300 #ifdef linux-dependent code in mformat.c
303 Fix reading of boot sector (block size)
305 Do no longer open floppy devices with O_EXCL, in order to enable
306 work-around against broken cache.
308 If no info dir exists at all, assume dir
316 Solaris 8 compatibility
320 Support for multiple drives in floppyd
324 Fixed some long name directory entry freeing bugs
326 Fixed duplicate FAT writing error. Fixed segfault on short images.
327 Mformat creates images of correct size.
328 CYGWIN compatibility (O_BINARY flag).
330 Cygwin patch for plain_io.c (no locking)
332 Fix a couple of memory leaks in config file parsing. Fix llong.h
333 (redefined same symbol twice)
334 Fix a variable initialization problem in plain_io.c
335 New mclasserase command to erase memory cards
338 Fix rootskip and rate of XDF disks
340 Fix inverted IS_MFORMAT_ONLY condition in plain_io.c
342 Moved putc after variable description (anybody knows about a -W
343 flag so that gcc warns about these?)
345 Fixed mattrib -p (missing slash)
347 Added -m option to mformat to specify a non-standard mediabyte
349 Added -d options to mformat to specify number of FAT copies. Can
350 also be set using the MTOOLS_NFATS environmental variable.
351 Also added similar env variable for root directory length
352 Signed/unsigned fixes, to satisfy increased pickyness of gcc ;-)
353 CYGWIN fixes for mcat
356 Released 3.9.9 : Identical to pre-3.9.9 except for the version number
359 Fixed max numbers of sectors for FAT12 and FAT16 (was off by one...)
360 Improved fat_len calculation
361 Fixed plain_io.c bug (Swap byte applied after partition stuff,
364 Fixed mcat end-of-file bugs (mcat went on writing, and writing,
365 and writing, even after end of file)
367 If "standard" CHS specified, but non-standard root dir size do not
368 use table-lookup based geometry ("old-dos media descriptor")
370 David's new uz script, that can use commands other than gzip for
373 Fixed vold support for mpartition
375 Added PACKED to unicode_char declaration (Arm)
376 Mpartition can now create the image if -I is specified.
378 Support for geometry-less Atari disks
379 Support for byte-swapping disks
381 Avoid .(l and .)l in generated man pages
385 Fix [] wildcard off-by-one error
386 Avoid overwriting (Unix) file by itself in mcopy
387 Avoid cloberring any file if implicit target is used (the
388 one-argument syntax of mcopy)
389 Added Zip 750 entry to mzip.c
393 Fixes in buffer.c for oddly sized image files
394 Mformat.c fixes to avoid making images which would not be
397 Warn for invalid partition numbers
399 Released pre6-3.9.8 : getting rid of linux-gnu references is
400 almost as difficult as exorcising the devil...
402 Released pre5-3.9.8 after fixing a couple of version numbers
404 Applied Adrian Bunk's patches, minus the Stallmanisms.
405 De-stallmanized config.gues and config.sub files
408 Fixed DELMARK translation of mcopy's -T option, pre3-3.9.8
410 Fixed #ifdef DEBUG statements, pre2-3.9.8
414 Updated config.guess/config.sub to support Darwin
415 Patch for converting contents of files from/to Dos' version of
417 Fixed bug in to_unix function
419 Updated freebsd floppy device definitions
421 Fixes for floppyd to work with current protocol version of floppyd
423 Fixed parsing of Unix filenames ending with slash
425 Fixed file closing of floppyd
427 Fixed a cindex entry in documentation
429 Rewrote PDF rule to use pdflatex, rather than go through dvi
430 (pdflatex output looks nicer)
432 Fixed JAZ Zip file overwrite bug (actually, this bug could occur
433 on any disk reasonably full...)
435 Fix mzip manpage to include Linux in the list of supported OS'es
437 Protect against division by zero when reading BSD disks...
441 Hurd openflags fix in mainloop.c
442 Added description for t option to mcopy man page
443 Added -lbsd to list of libraries to be tested for LynxOS
444 Unset LANG in mkmanpages
445 Updated config.gues/config.sub
446 Removed stale documentation for xcopy
447 Fixed typo in mformat man page
449 Zip 250 support in mzip
453 Variable initialization in mdir.c
455 Do not use offset_t on AIX ==> broken
457 Large disk fixes, especially for Solaris
459 Released Mtools-3.9.7
461 Mtools-pre2-3.9.7 released: some potential buffer overflows
463 Mtools-pre-3.9.7 released
465 Added devices for OpenBSD (the previous NetBSD/OpenBSD where wrong
468 Fixed a couple of floppyd bugs
470 Added texclean to make distclean, added new "pdf" target.
472 Did away with ipaddr_t and replaced it with IPaddr_t which is
473 guaranteed not to crash anywhere...
475 Defined geometry for default a: devices on Linux and Solaris with vold
477 Carefully navigate Solaris' polluted namespace...
479 Suppressed bogus error message when mcopying to an existing file.
481 Fixed mformat problem with Fat32 (mformat didn't initialize the
482 label and fat type fields in the boot sector, and the other mtools
483 utils didn't check them)
485 Fixed two more scandisk problems:
486 - the infosector should end with 0x55aa
487 - When deleting a file, be sure to DELMARK the VSE's as
488 well as the main entry
490 Fixed an evasive Fat32 bug: a parent directory entry pointing to
491 the root should have an address of 0 instead of the more logical 2
493 Corrected mdir error handling
494 Fixed a bug in mren (problem when renaming short file names)
496 Corrected a typo in error handling
498 Fixed size problem with Ctrl-Z.
500 (No joke): avoid setting volume serial number on "Old Dos" disks
502 - Re-aligned command line options with Dos
503 - New -n/-N option for mlabel to change volume serial numbers
504 - Mattrib -p escapes file names in order to handle file name
506 - Changed mformat serial number format
509 - Mtools would never completely use all directory slots, because
510 it overestimated space consumption by 1
511 - Mtools did not initialize the stat struct for pipes, and thus
512 gave occasionnally bogus "Disk full" error messages
514 Rearranged tty open call so that it is only opened when actually
517 Added special case for 0xf7 media descriptor
519 Make O_NDELAY conditional everywhere
521 Return correct return value from mt_lseek, even if off_t is a 64
524 Treat OpenBSD the same as NetBsd
526 Released 3.9.6 with the following fixes:
528 - Make Xdf work in nodma mode
529 - Fix for mformatting MSS disks
531 1st attempt to release 3.9.6 with mostly minor fixes:
532 - platform compatibility
533 - automatic installation of info files
534 - mdir's -X flag no longer implies "recursive"
536 3.9.5 released with mostly minor fixes:
537 - Starting cluster numbers of "." directory entry
538 - Copying of empty Files from Dos to Unix
539 - Misc platform compatibility issues
541 Another embarrassing bug found, 3.9.4 released. When will this
544 Mtools 3.9.3 released
546 Open BSD SCSI fixes & added GLIBC linux/unistd.h for llseek. These
547 Glibc problems are potentially dangerous, and can lead to data loss.
549 Mtools 3.9.2 released
551 Fixed typo in plain_io.c
553 More rigor about signed vs unsigned issue. FreeBSD Scsi support
555 Allow for 2GB Jaz drives
557 Rewrote floppyd in C instead of C++
567 Make sure that fat_type doesn't overwrite byte 62 with zero =>
570 Added support for "replay" listing of mattrib. Cleaned up version
571 number and date handling (date was not always accurate...)
573 Added geometry autodetection code for Linux harddisks to
574 mpartition and mformat. Removed misleading references to
575 "non-removable media"
577 Added boot sector template option for mpartition. Fixed mtools.1
578 man page. Mattrib -s e:/ fix
582 Fixed HP SCSI "big write" bug
584 Fixed debug mode in vfat.c
586 A few minor floppy related fixes (installation, and replacement
587 for setenv function, which is absent from some platforms)
589 Added floppyd (remote access to floppy disks)
591 Updated mkmanpages script to dynamically get date and mtools
592 version. Correct "removable media" error message to talk about
593 /etc/mtools.conf instead of /etc/mtools. Do init_geom to read
594 geometry if no geometry is set.
596 Mtools 3.9.1 released
598 Mformats makes disks which are readable both as partitioned and as
601 Corrected Tim Hoogasian's e-mail address
605 "Dirty end too big" mformat bug corrected
607 Corrected typoes for IRIX devices, use macros for attribute types,
608 fix 0 length file bug.
611 Bigger array for SCSI command
615 OS/2 portabilty, GLIBC portability
617 Fixes related to Solaris new vold support
619 Fixed a few BSD typoes, and renamed ALLCFLAGS in the Makefile to
620 CFLAGS for those makes that don't support implicit rules well enough
624 Various Bugfixes (overwrite mode and directory cache)
626 Added mformat_only flag.
628 Fixed non-batchmode mcopy bug. Fixed shortname case bug
630 Minfo and mformat boot program bug fixes
632 Allow default block sizes per device which are not equal to 512
634 Allow and interpret back quotes in file names
638 Scandir optimizations. Fixed nasty Heisenbug in hash.c.
640 Fixed integer width problem in fat.c, and minor bugs in hashtable.
642 More performance optization. Buffer handl
646 Fixed mtype and mcheck. Started cleaning up out-of-memory handling
648 Jacked up performance, and corrected signal handling bugs. Also
649 corrected various "Disk full bugs"
651 Fixed "Bad address" errors which occurred when running mdu on empty
652 files. When copying recursively, do not barf if a directory
653 already exist at the target. Mcopy operates silently by default.
655 removed mwrite. Obsoleted long ago by mcopy
657 fixed mdir -X, added mattrib -X; document both. Fix doc for name
660 fixed polarity of sys_errlist. Renamed some include files which
661 bore the same name as system include files. Fixed another
662 memory leak in dir_grow. A/UX termio workaround.
664 fixed filedescriptor leak. Make mbadblocks stoppable. Doc
665 fixes. Fixed one memory leak, another one further down the road
666 remains... Fixed error handling in createDirectory.
668 bugfixes: mbadblocks, fat, unix quit, null pointers in mcopy...
670 Renamed it to pre3-3.9 due to mixup when shipping the pre2-3.9
671 version. No actual code change apart from patchlevel.h
673 Pre2-3.9. Added mpartion manpage. Added misc.o dependency to
674 mkmanifest. Fixed mpartition bug with partitions with more
677 Pre-3.9. Redid the mainloop logic, and got rid of lots of cruft
678 in subdir.c and parse.c. It is now possible to put wildcards in
679 the directory part of the filename. Design also became simpler,
680 making it easier to maintain this part in the future.
681 Added a -u flag to mzip to temporarily unprotect a disk
682 Added a test to mzip to prevent manipulation of mounted disks
683 Added support for partitioned devices in mmount
685 Added mdu and recursive mdir
687 Fixed bugs in recursive copy stuff, added recursive mattrib, and
688 fixed a few buffer overrun bugs
690 Added recursive copy and attribute conservation flags to mtools
694 Include Sys5 directories on SunOs in order to have a correct
700 Use 8 sector clusters for 32-bit FATs: this is what Micro$oft user
702 Corrected gross bug in fat12_decode
704 Simplified fat bits handlings
708 Buffer.c and FAT bugfixes
710 More FAT32 fixes. New mshowfat command.
712 Fix FAT32 problem (FAT32 does not use the high nibble)
714 Detect presence of sys_errlist using autoconf instead of
715 making its usage dependent on BSD.
717 Guard against corrupted "next free block" pointer in a FAT32
720 Use root privileges during scsi_init
722 Fixed close-on-exec bug.
724 Fixed #include in HP_UX. Sys/floppy.h is not known on all flavors
727 Fixed Makefile so that make -j works without errors. Fixed
728 upper/lower bug in mmount
732 Add option to mformat to keep boot sector, or to read it from
733 a file. Added various flags to customize directory listing
734 appearance and long name behavior
736 Fix bug in yesterdays fix. Also make sure to resize hash
737 table if too many deleted entries accumulate.
739 Fixed yet another hash table bug
741 Yet another HPUX fix.
743 Fixed a segfault in mpartition
745 Removed a few Stallmanisms in config.guess
749 Corrected a few errors in new vold code
751 Removed extra &'s from string addresses.
752 Added listing of current configuration to mtools -V
753 Updated version number and date in mkmanpages
755 New Bebox patch. Removes almost all BEBOX specifities because
756 they are no longer needed with the new DR9 release.
757 Small fix for size detection of SCSI disks.
759 Fixed small typo in new vold code
761 Added partition consistency checks for accessing device.
763 New version of Solaris vold code
765 Solaris floppy geometry. Support for older MO disks (size
766 returned in non-standard location)
767 Corrected ftp address for fdutils
771 Brought Makefile.Be and config.h.Be up to date with the recent
774 Add Ultrix to the list of OS'es which do not define their
778 Various "Next proofintg".
779 * add VENDOR_, CPU_ and OS_ before machine type tags
780 detected by autoconf. Next tends to be a frequently
782 * use utimes preferably before utime
783 * try to include _all_ termios functions.
784 * more precise detection of available termios functions
786 Added knowledge of Zip Tools Disk password to mzip.
788 Went back to using ALLCFLAGS in Makefile for those people who
789 want to override CFLAGS
791 Added note about Alpha site to doc.
793 Prefer termios.h on Ultrix
795 Renamed missing_functions to missFuncs in order to accommodate
796 operating systems with file name size limits.
798 Autoextend size for images that are too small. Moved BSD
799 dependent #ifdef's after the inclusion of sys/param.h, as it
800 is there where BSD is defined (sigh!)
802 Insist on the fact that mzip's -f flag only makes sense if
803 given in addition to -e
805 Corrected typo in doc.
807 Removed read and write prototypes, they conflict on an Alpha!
813 Do not stat any files in /dev/ on BEOS. Remove spurious system
814 include files from non-sysincludes.h file
818 Added Sunos4 and SCO support to scsi.c. Use tzset before
819 gettimeofday, except for BSD. Use Z: for a Zip drive, and J:
820 for a Jaz drive instead of D: for both. Added machine
821 specific libraries and CFLAGS for A/UX.
823 Various A/UX fixes. Changed scanning order for termio and
824 termios due to problems with the other order on A/UX.
826 Print error message for wrong password.
828 Include mzip man page
830 Document new config flags introduced in 970204.
831 On systems not supporting euid, do not bail out if both euid
834 Prevent mmove from moving directories into themselves in order
835 to keep a tree-like directory structure
837 Fixes for mtools_no_vfat
839 Additional config file pointed by MTOOLSRC; possibility to
840 switch off generation of VFAT long names.
842 HP/UX setresuid support. "Mcopy a: ." bugfix.
844 Renamed f_* functions into file_* in order to avoid a clash
845 with a preprocessor macro named f_data on AIX.
847 Released 3.5, Solaris compatibility fix w.r.t. memmove
851 Fixed location of configuration file in doc.
855 More BSD & 64 bit changes
857 Added at_exit implementation for those boxes who have neither
858 on_exit nor atexit. Added check to make sure the compiler
859 handels structures in a sane way.
861 Backed out again of the traditional-cpp change on
862 larry.jones@sdrc.com's advice
864 Added traditional-cpp in order to make mtools compilable on a Sun
868 BEOS fixes and support for SCSI devices with a sector size
871 Fixed some preprocessor macros. Added texclean macro to Makefile
873 Clarified the documentation about the Bebox.
877 Made Makefile "AIX-proof". Added precmd to config.c
881 Osf4 support. Released 3.2
883 Fixed Makefile typo, and fixed various bugs with renaming or
884 moving dot or dot dot
886 Fixed streamcache.c bug
888 Added add-disk script and format.dat file
890 Fixed mrd e:xxx/, tested Xdf support
892 Strange mformat fixes... Dos always seems to assume a cluster
893 size of at least 8 sectors and 512 root directory entries. Sigh!
895 FAT32 support, BeOS patches
897 Added more debugging code to mpartition and minfo. Added
898 "packed" attribute to the partition structure.
899 Cleaned up argument handling.
901 Fixed partition removal bug in mpartition.c
903 Fixed streamcache allocation bug. Clearer error message when
904 trying to access a non-existant partition.
906 Added "packed" attribute to some fields of the vfat_subentry
907 structure, in order to work around a bug in a gcc version for
909 Use getpass() for password prompting in mzip.c
911 Various small bug fixes
913 Fixed typoes in plain_io.c, mpartition.c and mtools.texi.
914 Relaxed security in mpartition.c, so non-root users may print
915 a partition, or perform any local changes to it.
916 Mpartition now prints info to recreate partition.
918 Add mpartition command to partition Zip, Jaz and other Scsi
920 Chose between on_exit or atexit using autoconf.
922 Added minfo command to print disk geometry and other parameters.
924 Replaced atexit by onexit. Atexit barfed on SunOs.
925 Replaced O_RDWR flag in mzip with O_RDONLY.
926 Added precmd variable to execute commands before opening a
929 Shortened README, segregated config file pathnames into a
932 General cleanup, more enhancements to privilege handling.
934 Added debugging output to mzip.
935 Made expand.c safe and still compatible with suid operation.
937 Made device locking optional.
939 Added const qualifiers
943 Added kludgy xcopy support
945 Only skip sys_errlist declaration on NetBSD (some older
946 platforms might need this)
948 Upgraded to autoconf 2.12, fixed some Stallmanisms.
949 Added device entry for LynxOs.
951 Use gettimeofday before tzset (for BSD).
953 Use correct location of signal.h. Removed declaration
956 BEOS patches by Marco Nelissen
957 Removed some clashing prototypes
959 Prints privilege debugging message to stderr, and reopens SCSI
960 file with root privileges.
962 Fixed typoes in mzip. Added pointer to html doc.
964 Fixed Linux Scsi ioctl.
966 Added warnings against cookies, fixed doc to reflect new set-uid
969 Fixed typoes in privilege routines, and removed Heisenbergian
970 parts of the debugging code.
972 Deleted prototypes for random() and srandom(): they *did*
973 clash (on a DEC Alpha)
975 Solaris & SunOS privilege management. Fixed date entries in
980 Cosmetic mzip fixes. Add pointer to info doc to mtools.1
982 ISC addition. Doc fix for set_parameters ioctl.
986 Replaced zip_* by scsi_*, as these functions are not
987 specifically relevant to the ZIP (they apply to the JAZ as
989 Fixed documentation on -n flag for mcopy
991 Include termio before termios because of SCO
993 Do not declare timezone external variable on Ultrix, where it
994 has a different type.
996 Changed floppy into rfloppy for HP/UX.
998 Added -Q option to mcopy, which aborts copying multiple files
999 as soon as an error for one file is encounteres
1000 Removed useless -i option for mcopy
1001 Small devices.c portability fixes (ultrix and hpux)
1003 Added mzip (eject ZIP disks) (Markus Gyger <mgyger@itr.ch>)
1004 Renamed mtest to mtoolstest to please pine.
1006 Added warning about running mtools with root privs.
1008 Fixed uninitialized variable in fat.c and added example for Sun
1011 Fixed comment in scripts/tgz
1013 Fixed partition handling code (yes, again!)
1014 Added code to handle ZIP disks on Solaris/SunOS (many thanks
1015 to James P. Dugal (jpd@usl.edu))
1017 Proper permissions for main directory.
1019 Renamed scripts/gz to scripts/tgz
1021 Added raw devices for Solaris, apparently more performant
1022 Test first for tzset in autoconfigure (Solaris)
1024 Segment fault due to change of buffer size fixed
1025 E-mail address fixed
1027 Lots of portability fixes.
1029 Yet another typo fix for the partition table code. Oh Gawd,
1030 will this never stop?
1031 Fix for proper .mcwd pathname concatenations
1033 Backed out partition table "fix": the original code was right
1036 Corrected a few uninitialised variables
1038 Corrected doc about devices file.
1040 Added pointer to the doc to the README file
1042 Partition table parsing fixed
1044 Fujitsu DS/90 (UXP) support
1047 dispatcher cleanup in mtools.h
1048 fat_bits 12/16 toggle fix.
1049 More space for error message variable in mformat
1052 Fix for CPU names with dots in autoconfigure
1053 Some new device descriptions
1056 Set XDF mode when formatting an XDF disk (makes sense, after all...)
1058 XDF seems to work. Yeah!
1060 More ED fixes. More parameter size fixed for 64bit.
1062 Beginning of ED and 5 1/4 HD XDF support (doesn't work yet for
1065 Make vold and "raw" floppy drive accessible simultaneously on
1066 Solaris by calling one A: and the other B:
1067 Add missing mbadblock LINK in Makefile.in
1069 Inserted missing newline character
1071 Treat number of heads or sectors as chars. The BIOS wouldn't
1072 allow bigger numbers anyways, thus big numbers are probably
1076 Geometry setting for HP/UX
1078 Changed auto array in codepage to malloc'ed one in order to
1079 work around buggy compilers
1081 Pointers to other doc in the INSTALL file
1083 Do no longer be confused by deleted VSE's
1084 Define MAXPATHLEN for SCO
1085 Missing lockf prototype for SCO
1087 Handle DEBUG flag by autoconf
1088 Added Host vendor to compile flags in order to handle Sinix
1089 Better Sinix handling in devices.c
1090 Only print duplicate VSE messages when running with DEBUG
1091 Fix mlabel exit code
1094 Xcopy fixes for Sysv
1098 pre4-3.0. Lots of bug fixes. Texinfo file
1102 use autoconf to get rid once and for all of those pesky OS
1105 use sys/termio instead of sys/termios to please AIX
1107 more spelling fixes.
1111 Mmount arg parsing bug fix
1113 New partition configuration variable.
1115 Spelling fixes, removed warning in README, IRIX floppy devices
1117 More Alpha streamlining
1119 Alpha patches (64 bit clean-ness)
1120 AIX patches (built in drive names)
1121 Raw tty patches (no need to type return when confirming an action
1124 Replaced include strings.h by string.h everywhere where applicable
1125 Changed thousands separator in mdir from a dot to a space to
1126 please both Americans and Europeans.
1127 Fixed memory allocation bug if no "constant device" is present.
1128 #defined strtoul to atol for SunOS
1130 Minor cleanup, released 2.5.4
1132 Added "magic" header to manpages to have man run them through tbl
1134 MTOOLS_LOWER_CASE is back, various small bug fixes over
1137 Bus strike in Grenoble! Well, let's do something useful and
1138 re-arrange the configuration file syntax :-)
1139 The syntax has become much more flexible now, and also
1140 includes items which used to be only accessible via
1141 environmental variables.
1142 Moreover, it is now possible to include character translation
1145 Fixed another Atari disk bug: Atari disks sport a bogus
1146 "number of hidden sectors"
1148 Fixed missing zero-terminator in autorenamed long names
1149 MTOOLS_SKIP_CHECK now implies MTOOLS_FAT_COMPATIBILITY.
1151 Fixed small quoted-printable-induced typo in the Makefile.
1153 Folks, please don't use quoted-printable. It sometimes changes
1154 the CONTENT of your messages. Even the MIME RFC's acknowledge this.
1155 Case in point: £400 gets transformed into =A3400, which looks
1156 like 3400 pounds to a person unaware of this MIME "feature".
1159 Mformat now puts a 12 bit FAT on ED to better match Messy DOS'
1162 Added ability to do mcopy e: to copy all files from the root
1164 New Xdf-less Linux target in the Makefile
1165 Relaxed sanity check to let pass wonky Atari disks whose FAT
1166 begins with 3 zero bytes.
1167 Make the check of the initial fat bytes conditional on
1169 Corrected "testna=" bug
1170 Upped minimal sector size to be 256 (instead of 128). This
1176 Ability to mformat 2m disks
1178 Xdf bug fix (dev parameters always set to Xdf, even if it
1179 wasn't really an Xdf disk)
1180 Fixed YAHB (yet another hash table bug :) ) . Hope this one's
1182 Centralizing most env-var handling.
1183 Update of the mtools manpage.
1184 Xdf is now optional, and only active if MTOOLS_USE_XDF is
1185 set. Saves a few milliseconds of startup time on non Xdf
1187 Some lawyer-proofing, just in case :)
1189 Fast xdf code (finally!)
1190 Minor performance enhancements here and there.
1191 Names which are all lower case now generate a long name entry
1192 (according to Steve Searle, that's how Win'95 behaves).
1194 Character translation table fixes. Other name fixes.
1196 Put restrictions on long names to better match Win'95.
1197 (suggested by Steve Searle)
1198 Reworked autorename code. Catch SIGHUP signal
1199 Added missing file close to main loop
1200 Changed name of the "ask for action" command line flag to 'm',
1201 and used 'a' for 'Autorename'.
1203 Removed infinite loop bug in hash.c, which occurred when the
1204 hash table was filled with deleted entries.
1206 added Atari ST-style serial numbers (they live in the banner)
1207 fixed a troff bug in mtools.1
1208 Both changes were suggested by D. Hugh Redelmeier (hugh@mimosa.com)
1210 v2.5.3 released (after lots of fixes)
1214 mdir.c: initialized "files" and "blocks" to avoid complaint by GCC
1215 mattrib.c: initialized "code" to avoid complaint by GCC
1217 Based on comments by Paul Slootman <paul@ahwau.ahold.nl>:
1218 init.c: fs_init(): initialized disk_size to 0. The section
1219 which previously initialized this is ifdef'd out. Why?
1220 Makefile, device.c: Passed ETCDIR (e.g. /etc or /etc/default)
1221 Gee, the Makefile is pretty ugly! It might be good to start
1222 thinking about autoconfigure, or at least some cleanup.
1223 Makefile, mformat.c: use -DSOLARIS2, use srand48()/rand48()
1224 msdos.h, file.c, mdir.c: prefixed YEAR/MONTH/DAY/HOUR/MINUTE/
1225 SEC with DOS_ to avoid conflicts with <sys/time.h> on SVR4
1226 devices.c: use %i instead of %d to allow different bases
1227 parse.c: Changed comment for get_name()/get_path(); need to
1228 revisit this after deciding on default case behavior
1229 devices.c: load_devices(): fixed bad fprintf, line 748
1230 parse.c, mformat.c, misc.c: replaced expressions like
1231 "if (islower(foo)) foo=toupper(foo)" with "foo=toupper(foo)"
1237 Based on comments by Martin Kraemer <Martin.Kraemer@mch.sni.de>:
1238 Bug fixes for compile errors and core dumps under SINIX-D 5.41
1244 v19950822 v2.5 released
1247 Change null-fill for unused remainder of VSE to 0xff fill for
1248 both upper and lower character (just one null for termination)
1249 This seems to better match Win95's behavior; Win95 had been
1250 complaining about bogus characters
1251 file_name.c: unicode_write()
1254 Commented out enforcement of VSEs being in order. Win95 likes
1255 to put them exactly backwards, so we'd better tolerate getting
1256 them any way they might come! Not sure what is lost by losing
1257 these checks, but it seems to be OK.
1259 directory.c: dir_read()
1261 Copying and distribution of this file, with or without modification,
1262 are permitted in any medium without royalty provided the copyright
1263 notice and this notice are preserved.