Initial import package mtools: Programs for accessing MS-DOS disks without mounting...
[profile/ivi/mtools.git] / NEWS
1 v4_0_12
2         Mingw compatibility fixes
3 v4_0_11
4         Fixed compiler warnings in mlabel.c and elsewhere
5         Fixed h flag in mattrib.c
6         Added missing error checking in floppyd and elsewhere
7         
8 v4_0_10
9         More copyright stuff...
10         Fixed issues with max filesize (was 2GB instead of 4GB, and
11         warned only after copying the beginning)
12 v4_0_9
13         More copyright stuff
14 v4_0_8
15         Corrected copyright attributions in the various files
16 v4_0_7
17         Fixed conversion to native on OS/2
18         Fix parsing of --help flag
19 v4_0_6
20         Fallback for missing wchar_t iconv codepage on OS/2
21         Fixes for LSEEK64 support
22         Support for --help that returns a 0 exit status
23 v4_0_5
24         Make setpgrp() usage in floppyd conditional
25         Re-instate PACKED around structure (ARM)
26         LSEEK64
27         
28 v4_0_4
29         BSD support: SCSI, use getuserid/getgroupid in floppyd
30         Another attempt at putwc fix for OS/2
31         Further GNU fixes
32         Fallback for putwc if there is wchar (OS/2)
33 v4_0_3
34         Fix multipart pathname parsing bug in vfat.c (forgot limited length)
35         Supplied fallback define for putwc
36         Copyright notices in all sources
37 v4_0_2
38         Off-by-2 error in unix_name in file_name.c
39 v4_0_1
40         Missing functions on Solaris
41 v4_0_0
42         Offset for -i-specified image files
43 v4_0_0_pre2
44         Use transliteration to represent characters which don't exist in
45         target set
46 v4_0_0_pre1
47         Mtools-4 with Unicode support
48         Released 4.0.0_pre1
49 v20071226
50         Debian build files
51         Fixed security issue with doctored file names
52         64 bit compilation fixes
53 v20070601
54         Fixed misc blunders...
55 v20070531
56         Fixed lots of minor items raised by gcc4
57         Merged some of the BSD patches
58         New version of amuFormat.sh written in sh rather than csh
59         Support for config parameters after -i file
60         Released 3.9.11
61 v20070411
62         Added sizecode printing on minfo
63         In mformat manpage, use same flag for sector number than printed in
64         minfo
65         Limit sizecode to 6, else it will overflow max sector size defined in
66         msdos.h
67 v20070308
68         Applied mingw patch by Jamey Sharp and Josh Triplett
69 v20070306
70         Fixed doc about /etc/default
71 v20070305
72         Fixed mlabel on read-only disks
73 v20060626
74         Merged Redhat/Fedora patches
75 v20060531
76         #ifdef linux-dependant code in mformat.c
77 v20060525
78         Fix gcc4 warnings
79         Fix reading of boot sector (block size)
80 v20060228b
81         Do no longer open floppy devices with O_EXCL, in order to enable
82         work-around against broken cache.
83 v20060228
84         If no info dir exists at all, assume dir
85 v20060227
86         Support for DESTDIR
87 v20051011
88         Fix Unix loop
89 v20050410
90         Cygwin compatibility
91 v20050317
92         Solaris 8 compatibility
93 v20050302
94         Released 3.9.10
95 v20050228
96         Support for multiple drives in floppyd
97 v20050213b
98         Updated .spec file
99 v20050213
100         Fixed some long name directory entry freeing bugs
101 v20040505
102         Fixed duplicate FAT writing error. Fixed segfault on short images.
103         Mformat creates images of correct size.
104         CYGWIN compatibility (O_BINARY flag).
105 v20040420
106         Cygwin patch for plain_io.c (no locking)
107 v20040228
108         Fix a couple of memory leaks in config file parsing. Fix llong.h
109         (redefined same symbol twice)
110         Fix a variable initialization problem in plain_io.c
111         New mclasserase command to erase memory cards
112         C99 "compatibility"
113 v20030718
114         Fix rootskip and rate of XDF disks
115 v20030705
116         Fix inverted IS_MFORMAT_ONLY conditon in plain_io.c
117 v20030609
118         Moved putc after variable description (anybody knows about a -W
119         flag so that gcc warns about these?)
120 v20030606
121         Fixed mattrib -p (missing slash)
122 v20030605
123         Added -m option to mformat to specify a non-standard mediabyte
124 v20030524
125         Added -d options to mformat to specify number of FAT copies. Can
126         also be set using the MTOOLS_NFATS environmental variable.
127         Also added similar env variable for root directory length
128         Signed/unsigned fixes, to satisfy increased pickyness of gcc ;-)
129         CYGWIN fixes for mcat
130         floppyd bugfixes
131 v20030213
132         Released 3.9.9 : Identical to pre-3.9.9 except for the version number
133 v20030213
134         Released 3.9.9 Pre-1
135         Fixed max numbers of sectors for FAT12 and FAT16 (was off by one...)
136         Improved fat_len calculation
137         Fixed plain_io.c bug (Swap byte applied after partition stuff,
138         instead of before)
139 v20030118
140         Fixed mcat end-of-file bugs (mcat went on writing, and writing,
141         and writing, even after end of file)
142 v20030105
143         If "standard" CHS specified, but non-standard root dir size do not
144         use table-lookup based geometry ("old-dos media descriptor")
145 v20021118
146         David's new uz script, that can use commands other than gzip for
147         compression
148 v20021116
149         Fixed vold support for mpartition
150 v20021105
151         Added PACKED to unicode_char declaration (Arm)
152         Mpartition can now create the image if -I is specified.
153 v20021104
154         Support for geometry-less Atari disks
155         Support for byte-swapping disks
156 v20021102b
157         Avoid .(l and .)l in generated man pages
158 v20021102
159         -i flag
160         Fix mformat for 2m
161         Fix [] wildcard off-by-one error
162         Avoid overwriting (Unix) file by itself in mcopy
163         Avoid cloberring any file if implicit target is used (the
164         one-argument syntax of mcopy)
165         Added Zip 750 entry to mzip.c
166         SCO Scsi fix
167 v20020125
168         Fixes for cygwin
169         Fixes in buffer.c for oddly sized image files
170         Mformat.c fixes to avoid makeing images which would not be
171         readable in windows.
172 v20010908
173         Warn for invalid partition numbers
174 v20010526
175         Released pre6-3.9.8 : getting rid of linux-gnu references is
176         almost as difficult as exorcising the devil...
177 v20010526
178         Released pre5-3.9.8 after fixing a couple of version numbers
179 v20010526
180         Applied Adrian Bunk's patches, minus the Stallmanisms.
181         De-stallmanized config.gues and config.sub files
182         pre4-3.9.8
183 v20010521
184         Fixed DELMARK translation of mcopy's -T option, pre3-3.9.8
185 v20010521
186         Fixed #ifdef DEBUG statements, pre2-3.9.8
187 v20010520
188         Released pre-3.9.8
189 v20010507
190         Updated config.guess/config.sub to support Darwin
191         Patch for converting contents of files from/to Dos' version of
192         8bit Ascii
193         Fixed bug in to_unix function
194 v20010330
195         Updated freebsd floppy device definitions
196 v20010325
197         Fixes for floppyd to work with current protocol version of floppyd
198 v20010325
199         Fixed parsing of Unix filenames ending with slash
200 v20010325
201         Fixed file closing of floppyd
202 v20001213
203         Fixed a cindex entry in documentation
204 v20001113
205         Rewrote PDF rule to use pdflatex, rather than go through dvi
206         (pdflatex output looks nicer)
207 v20001113
208         Fixed JAZ Zip file overwrite bug (actually, this bug could occur
209         on any disk reasonably full...)
210 v20001018
211         Fix mzip manpage to include Linux in the list of supported OS'es
212 v20001009
213         Protect against division by zero when reading BSD disks...
214 v20000829
215         Documentation fixes
216 v20000820
217         Hurd openflags fix in mainloop.c
218         Added description for t option to mcopy man page
219         Added -lbsd to list of libraries to be tested for LynxOS
220         Unset LANG in mkmanpages
221         Updated config.gues/config.sub
222         Removed stale documentation for xcopy
223         Fixed typo in mformat man page
224 v20000810
225         Zip 250 support in mzip
226 v20000708
227         Floppyd robustness
228 v20000703
229         Variable initialization in mdir.c
230 v20000623
231         Do not use offset_t on AIX ==> broken
232 v20000610
233         Large disk fixes, especially for Solaris
234 v20000601
235         Released Mtools-3.9.7
236 v20000528
237         Mtools-pre2-3.9.7 released: some potential buffer overflows     
238 v20000521
239         Mtools-pre-3.9.7 released
240 v20000520
241         Added devices for OpenBSD (the previous NetBSD/OpenBSD where wrong
242         for OpenBSD)
243 v20000517
244         Fixed a couple of floppyd bugs
245 v20000514
246         Added texclean to make distclean, added new "pdf" target.
247 v20000510
248         Did away with ipaddr_t and replaced it with IPaddr_t which is
249         guaranteed not to crash anywhere...
250 v20000509
251         Defined geometry for default a: devices on Linux and Solaris with vold
252 v20000502
253         Carefully navigate Solaris' polluted namespace...
254 v20000501
255         Suppressed bogus error message when mcopying to an existing file.
256 v20000429
257         Fixed mformat problem with Fat32 (mformat didn't initialize the
258         label and fat type fields in the boot sector, and the other mtools
259         utils didn't check them)
260 v20000428
261         Fixed two more scandisk problems:
262                 - the infosector should end with 0x55aa
263                 - When deleting a file, be sure to DELMARK the VSE's as
264                   well as the main entry
265 v20000428
266         Fixed an evasive Fat32 bug: a parent directory entry pointing to
267         the root should have an address of 0 instead of the more logical 2
268 v20000416
269         Corrected mdir error handling
270         Fixed a bug in mren (problem when renaming short file names)
271 v20000412
272         Corrected a typo in error handling
273 v20000410
274         Fixed size problem with Ctrl-Z.
275 v20000401
276         (No joke): avoid setting volume serial number on "Old Dos" disks
277 v20000320
278         - Re-aligned command line options with Dos
279         - New -n/-N option for mlabel to change volume serial numbers
280         - Mattrib -p escapes file names in order to handle file name
281         containing spaces
282         - Changed mformat serial number format
283 v19991121
284         Fixed 2 bugs:
285         - Mtools would never completely use all directory slots, because
286         it overestimated space consumption by 1
287         - Mtools did not initialize the stat struct for pipes, and thus
288         gave occasionnally bogus "Disk full" error messages
289 v19991011
290         Rearranged tty open call so that it is only opened when actually
291         needed  
292 v19990807
293         Added special case for 0xf7 media descriptor
294 v19990729
295         Make O_NDELAY conditional everywhere
296 v19990715
297         Return correct return value from mt_lseek, even if off_t is a 64
298         bit quantity
299 v19990712
300         Treat OpenBSD the same as NetBsd
301 v19990630
302         Released 3.9.6 with the following fixes:
303         - Typoes in xdf_io.c
304         - Make Xdf work in nodma mode
305         - Fix for mformatting MSS disks
306 v19990628
307         1st attempt to release 3.9.6 with mostly minor fixes:
308         - platform compatibility
309         - automatic installation of info files
310         - mdir's -X flag no longer implies "recursive"
311 v19990419
312         3.9.5 released with mostly minor fixes:
313         - Starting cluster numbers of "." directory entry
314         - Copying of empty Files from Dos to Unix
315         - Misc platform compatibility issues
316 v19990315
317         Another embarrassing bug found, 3.9.4 released. When will this
318         nightmare stop?
319 v19990314
320         Mtools 3.9.3 released
321 v19990314
322         Open BSD SCSI fixes & added GLIBC linux/unistd.h for llseek. These
323         Glibc problems are potentially dangerous, and can lead to data loss.
324 v19990314
325         Mtools 3.9.2 released
326 v19990310
327         Fixed typo in plain_io.c
328 v19990307
329         More rigor about signed vs unsigned issue.  FreeBSD Scsi support
330 v19990223
331         Allow for 2GB Jaz drives
332 v19990218
333         Rewrote floppyd in C instead of C++
334 v19990208
335         More buffer fix
336 v19990112
337         Buffer fix
338 v19990111
339         "Big disk" fixes
340 v19990104
341         OS/2 patch
342 v19981211
343         Make sure that fat_type doesn't overwrite byte 62 with zero =>
344         disk unbootable
345 v19981204
346         Added support for "replay" listing of mattrib.  Cleaned up version
347         number and date handling (date was not always accurate...)
348 v19981204
349         Added geometry autodetection code for Linux harddisks to
350         mpartition and mformat.  Removed misleading references to
351         "non-removable media"
352 v19981203
353         Added boot sector template option for mpartition.  Fixed mtools.1
354         man page. Mattrib -s e:/ fix
355 v19981031
356         Man pages bug fixes
357 v19981029
358         Fixed HP SCSI "big write" bug   
359 v19980701
360         Fixed debug mode in vfat.c
361 v19980629
362         A few minor floppy related fixes (installation, and replacement
363         for setenv function, which is absent from some platforms)       
364 v19980523
365         Added floppyd (remote access to floppy disks)
366 v19980522
367         Updated mkmanpages script to dynamically get date and mtools
368         version.  Correct "removable media" error message to talk about
369         /etc/mtools.conf instead of /etc/mtools.  Do init_geom to read
370         geometry if no geometry is set.
371 v19980514
372         Mtools 3.9.1 released
373 v19980503
374         Mformats makes disks which are readable both as partitioned and as
375         plain
376 v19980405
377         Corrected Tim Hoogasian's e-mail address
378 v19980404
379         OS/2 additions
380 v19980331
381         "Dirty end too big" mformat bug corrected
382 v19980330
383         Corrected typoes for IRIX devices, use macros for attribute types,
384         fix 0 length file bug.
385 v19980327
386         Loop detection code
387         Bigger array for SCSI command
388 v19980323
389         GLIBC portability
390 v19980322
391         OS/2 portabilty, GLIBC portability
392 v19980320
393         Fixes related to Solaris new vold support
394 v19980317
395         Fixed a few BSD typoes, and renamed ALLCFLAGS in the Makefile to
396         CFLAGS for those makes that don't support implicit rules well enough
397 v19980310
398         Mtools 3.9 released
399 v19980308
400         Various Bugfixes (overwrite mode and directory cache)
401 v19980301
402         Added mformat_only flag.
403 v19980130
404         Fixed non-batchmode mcopy bug.  Fixed shortname case bug
405 v19980130
406         Minfo and mformat boot program bug fixes
407 v19980120
408         Allow default block sizes per device which are not equal to 512
409 v19980108
410         Allow and interpret back quotes in file names
411 v19980101
412         Misc bugfixes
413 v19971231
414         Scandir optimizations.  Fixed nasty Heisenbug in hash.c.
415 v19971229
416         Fixed integer width problem in fat.c, and minor bugs in hashtable.
417 v19971222
418         More performance optization.  Buffer handl
419         ing redone.  New
420         "asynchronous mode".
421 v19971216
422         Fixed mtype and mcheck.  Started cleaning up out-of-memory handling
423 v19971215
424         Jacked up performance, and corrected signal handling bugs.  Also
425         corrected various "Disk full bugs"
426 v19971212
427         Fixed "Bad address" errors which occured when running mdu on empty
428         files.  When copying recursively, do not barf if a directory
429         already exist at the target.  Mcopy operates silently by default.
430 v19971212
431         removed mwrite. Obsoleted long ago by mcopy
432 v19971211
433         fixed mdir -X, added mattrib -X; document both.  Fix doc for name
434         clash handling
435 v19971210
436         fixed polarity of sys_errlist. Renamed some include files which
437         bore the same name as system include files.  Fixed another
438         memory leak in dir_grow. A/UX termio workaround.
439 v19971209
440         fixed filedescriptor leak. Make mbadblocks stoppable. Doc
441         fixes.  Fixed one memory leak, another one further down the road
442         remains... Fixed error handling in createDirectory.
443 v19971208
444         bugfixes: mbadblocks, fat, unix quit, null pointers in mcopy...
445 v19971205
446         Renamed it to pre3-3.9 due to mixup when shipping the pre2-3.9
447         version. No actual code change apart from patchlevel.h
448 v19971204
449         Pre2-3.9. Added mpartion manpage.  Added misc.o dependency to
450         mkmanifest.  Fixed mpartition bug with partitions with more
451         than 1023 cylinders
452 v19971129
453         Pre-3.9.  Redid the mainloop logic, and got rid of lots of cruft
454         in subdir.c and parse.c.  It is now possible to put wildcards in
455         the directory part of the filename.  Design also became simpler,
456         making it easyer to maintain this part in the future.
457         Added a -u flag to mzip to temporarily unprotect a disk
458         Added a test to mzip to prevent manipulation of mounted disks
459         Added support for partitioned devices in mmount
460 v19971116
461         Added mdu and recursive mdir
462 v19971112
463         Fixed bugs in recursive copy stuff, added recursive mattrib, and
464         fixed a few buffer overrun bugs
465 v19971110
466         Added recursive copy and attribute conservation flags to mtools 
467 v19971029
468         Fix parse.c typo
469 v19971013
470         Include Sys5 directories on SunOs in order to have a correct
471         timestamp
472         Detect Lilo disks
473 v19971006
474         Correct vold typo
475 v19971002
476         Use 8 sector clusters for 32-bit FATs: this is what Micro$oft user
477 v19970823
478         Corrected gross bug in fat12_decode
479 v19970823
480         Simplified fat bits handlings
481 v19970820
482         Raw Scsi_io for SGI
483 v19970813
484         Buffer.c and FAT bugfixes
485 v19970813
486         More FAT32 fixes.  New mshowfat command.
487 v19970813
488         Fix FAT32 problem (FAT32 does not use the high nibble)
489 v19970812
490         Detect presence of sys_errlist using autoconf instead of
491         making its usage dependent on BSD.
492         Fixed make texclean.
493         Guard against corrupted "next free block" pointer in a FAT32
494         InfoBlock
495 v19970715
496         Use root priviliges during scsi_init
497 v19970714
498         Fixed close-on-exec bug.
499 v19970714
500         Fixed #include in HP_UX. Sys/floppy.h is not known on all flavors
501         of HP_UX
502 v19970713
503         Fixed Makefile so that make -j works without errors.  Fixed
504         upper/lower bug in mmount
505 v19970708
506         Released 3.8
507 v19970629
508         Add option to mformat to keep boot sector, or to read it from
509         a file.  Added various flags to customize directory listing
510         appearance and long name behavior
511 v19970629
512         Fix bug in yesterdays fix.  Also make sure to resize hash
513         table if too many deleted entries accumulate.
514 v19970628
515         Fixed yet another hash table bug
516 v19970619
517         Yet another HPUX fix.
518 v19970619
519         Fixed a segfault in mpartition
520 v19970617
521         Removed a few Stallmanisms in config.guess
522 v19970612
523         3.7 released
524 v19970611
525         Corrected a few errors in new vold code
526 v19970610
527         Removed extra &'s from string addresses.
528         Added listing of current configuration to mtools -V
529         Updated version number and date in mkmanpages
530 v19970604
531         New Bebox patch.  Removes almost all BEBOX specifities because
532         they are no longer needed with the new DR9 release.
533         Small fix for size detection of SCSI disks.
534 v19970524
535         Fixed small typo in new vold code
536 v19970524
537         Added partition consistency checks for accessing device.
538 v19970523
539         New version of Solaris vold code
540 v19970516
541         Solaris floppy geometry.  Support for older MO disks (size
542         returned in non-standard location)
543         Corrected ftp address for fdutils
544 v19970504
545         Updated README.BEBOX
546 v19970504
547         Brought Makefile.Be and config.h.Be up to date with the recent
548         changes
549 v19970504
550         Add Ultrix to the list of OS'es which do not define their
551         prototypes
552         Small Makefile fix
553 v19970503
554         Various "Next proofintg".
555                 * add VENDOR_, CPU_ and OS_ before machine type tags
556                 detected by autoconf. Next tends to be a frequently
557                 used variable
558                 * use utimes preferably before utime
559                 * try to include _all_ termios functions.
560                 * more precise detection of available termios functions
561 v19970501
562         Added knowledge of Zip Tools Disk password to mzip.
563 v19970429
564         Went back to using ALLCFLAGS in Makefile for those people who
565         want to override CFLAGS
566 v19970426
567         Added note about Alpha site to doc.
568 v19970423
569         Prefer termios.h on Ultrix
570 v19970422
571         Renamed missing_functions to missFuncs in order to accomodate
572         operating systems with file name size limits.
573 v19970420
574         Autoextend size for images that are too small.  Moved BSD
575         dependant #ifdef's after the inclusion of sys/param.h, as it
576         is there where BSD is defined (sigh!)
577 v19970419
578         Insist on the fact that mzip's -f flag only makes sense if
579         given in addition to -e
580 v19970419
581         Corrected typo in doc.
582 v19970417
583         Removed read and write prototypes, they conflict on an Alpha!
584 v19970414
585         More HP/UX fixes.
586 v19970414
587         3.6 released
588 v19970414
589         Do not stat any files in /dev/ on BEOS. Remove spurious system
590         include files from non-sysincludes.h file
591 v19970413
592         Fixed Zip disk eject
593 v19970412
594         Added Sunos4 and SCO support to scsi.c.  Use tzset before
595         gettimeofday, except for BSD.  Use Z: for a Zip drive, and J:
596         for a Jaz drive instead of D: for both.  Added machine
597         specific libraries and CFLAGS for A/UX.
598 v19970410
599         Various A/UX fixes.  Changed scanning order for termio and
600         termios due to problems with the other order on A/UX.
601 v19970405
602         Print error message for wrong password.
603 v19970405
604         Include mzip man page
605 v19970404
606         Document new config flags introduced in 970204.
607         On systems not supporting euid, do not bail out if both euid
608         and ruid are 0.
609 v19970404
610         Prevent mmove from moving directories into themselves in order
611         to keep a tree-like directory structure
612 v19970403
613         Fixes for mtools_no_vfat
614 v19970402
615         Additional config file pointed by MTOOLSRC; possibility to
616         switch off generation of VFAT long names.
617 v19970401
618         HP/UX setresuid support. "Mcopy a: ." bugfix.
619 v19970331
620         Renamed f_* functions into file_* in order to avoid a clash
621         with a preprocessor macro named f_data on AIX.
622 v19970323
623         Released 3.5, Solaris compatibility fix w.r.t. memmove
624 v19970323
625         Released 3.4
626 v19970319
627         Fixed location of configuration file in doc.
628 v19970318
629         Fixed mlabel bug
630 v19970316
631         More BSD & 64 bit changes
632 v19970308
633         Added at_exit implementation for those boxes who have neither
634         on_exit nor atexit.  Added check to make sure the compiler
635         handels structures in a sane way.
636 v19970307
637         Backed out again of the traditional-cpp change on
638         larry.jones@sdrc.com's advice
639 v19970306
640         Added traditional-cpp in order to make mtools compilable on a Sun
641 v19970304
642         Fixed nolock flag
643 v19970227
644         BEOS fixes and support for SCSI devices with a sector size
645         different from 512.
646 v19970225
647         Fixed some preprocessor macros.  Added texclean macro to Makefile
648 v19970224
649         Clarified the documentation about the Bebox.
650 v19970224
651         Released 3.3
652 v19970220
653         Made Makefile "AIX-proof".  Added precmd to config.c
654 v19970219
655         Fixed typo in mdel.
656 v19970217
657         Osf4 support.  Released 3.2
658 v19970216
659         Fixed Makefile typo, and fixed various bugs with renaming or
660         moving dot or dot dot
661 v19970215
662         Fixed streamcache.c bug
663 v19970214
664         Added add-disk script and format.dat file
665 v19970214
666         Fixed mrd e:xxx/, tested Xdf support
667 v19970210
668         Strange mformat fixes...  Dos always seems to assume a cluster
669         size of at least 8 sectors and 512 root directory entries.  Sigh!       
670 v19970209
671         FAT32 support, BeOS patches
672 v19970208
673         Added more debugging code to mpartition and minfo.  Added
674         "packed" attribute to the partition structure.
675         Cleaned up argument handling.
676 v19970207
677         Fixed partition removal bug in mpartition.c
678 v19970206
679         Fixed streamcache allocation bug.  Clearer error message when
680         trying to access a non-existant partition.
681 v19970205
682         Added "packed" attribute to some fields of the vfat_subentry
683         structure, in order to work around a bug in a gcc version for
684         SunOS.
685         Use getpass() for password prompting in mzip.c  
686 v19970203
687         Various small bug fixes
688 v19970202
689         Fixed typoes in plain_io.c, mpartition.c and mtools.texi.
690         Relaxed security in mpartition.c, so non-root users may print
691         a partition, or perform any local changes to it.
692         Mpartition now prints info to recreate partition.
693 v19970201
694         Add mpartition command to partition Zip, Jaz and other Scsi
695         devices.
696         Chose between on_exit or atexit using autoconf.
697 v19970130
698         Added minfo command to print disk geometry and other parameters.
699 v19970129
700         Replaced atexit by onexit. Atexit barfed on SunOs.
701         Replaced O_RDWR flag in mzip with O_RDONLY.
702         Added precmd variable to execute commands before opening a
703         given drive.
704 v19970127
705         Shortened README, segregated config file pathnames into a
706         separate file.
707 v19970125
708         General cleanup, more enhancements to privilege handling.
709 v19970123
710         Added debugging output to mzip.
711         Made expand.c safe and still compatible with suid operation.
712         Fixed mzip typo.
713         Made device locking optional.
714 v19970122
715         Added const qualifiers
716 v19970120
717         3.1 Released
718 v19970116
719         Added kludgy xcopy support
720 v19970111
721         Only skip sys_errlist declaration on NetBSD (some older
722         platforms might need this)
723 v19970110
724         Upgraded to autoconf 2.12, fixed some Stallmanisms.
725         Added device entry for LynxOs.
726 v19970107
727         Use gettimeofday before tzset (for BSD).
728 v19970107
729         Use correct location of signal.h.  Removed declaration
730         for sys_errlist.
731 v19970107
732         BEOS patches by Marco Nelissen
733         Removed some clashing prototypes
734 v19970103
735         Prints privilege debugging message to stderr, and reopens SCSI
736         file with root privileges.
737 v19961227
738         Fixed typoes in mzip.  Added pointer to html doc.
739 v19961226
740         Fixed Linux Scsi ioctl.
741 v19961225
742         Added warnings against cookies, fixed doc to reflect new set-uid
743         policy.
744 v19961224
745         Fixed typoes in privilege routines, and removed Heisenbergian
746         parts of the  debugging code.
747 v19961223
748         Deleted prototypes for random() and srandom(): they *did*
749         clash (on a DEC Alpha)
750 v19961222
751         Solaris & SunOS privilege management.  Fixed date entries in
752         ChangeLog file.
753 v19961221
754         Solaris ZIP fix.
755 v19961219
756         Cosmetic mzip fixes.  Add pointer to info doc to mtools.1
757 v19961219
758         ISC addition. Doc fix for set_parameters ioctl.
759 v19961217
760         Mformat doc fix.
761 v19961216
762         Replaced zip_* by scsi_*, as these functions are not
763         specifically relevant to the ZIP (they apply to the JAZ as
764         well)
765         Fixed documentation on -n flag for mcopy
766 v19961217
767         Include termio before termios because of SCO
768         Applied Jaz patch
769         Do not declare timezone external variable on Ultrix, where it
770         has a different type.   
771 v19961215
772         Changed floppy into rfloppy for HP/UX.
773 v19961214
774         Added -Q option to mcopy, which aborts copying multiple files
775         as soon as an error for one file is encounteres
776         Removed useless -i option for mcopy
777         Small devices.c portability fixes (ultrix and hpux)
778 v19961211
779         Added mzip (eject ZIP disks) (Markus Gyger <mgyger@itr.ch>)
780         Renamed mtest to mtoolstest to please pine.
781 v19961210
782         Added warning about running mtools with root privs.
783 v19961209
784         Fixed unitialized variable in fat.c and added example for Sun
785         mtools.conf
786 v19961209
787         Fixed comment in scripts/tgz
788 v19961207
789         Fixed partition handling code (yes, again!)
790         Added code to handle ZIP disks on Solaris/SunOS (many thanks
791         to James P. Dugal (jpd@usl.edu))
792 v19961203
793         Proper permissions for main directory.
794 v19961202
795         Renamed scripts/gz to scripts/tgz
796 v19961202
797         Added raw devices for Solaris, apparently more performant
798         Test first for tzset in autoconfigure (Solaris)
799 v19961202
800         Segment fault due to change of buffer size fixed
801         E-mail adress fixed
802 v19961117
803         Lots of portability fixes.
804 v19961012
805         Yet another typo fix for the partition table code.  Oh Gawd,
806         will this never stop?
807         Fix for proper .mcwd pathname concatenations
808 v19961009
809         Backed out partition table "fix": the original code was right
810         after all
811 v19960920
812         Corrected a few uninitialised variables
813 v19960918
814         Corrected doc about devices file.
815 v19960917
816         Added pointer to the doc to the README file
817 v19960913
818         Partition table parsing fixed
819 v19960807
820         Fujitsu DS/90 (UXP) support
821 v19960727
822         ISC device
823         dispatcher cleanup in mtools.h
824         fat_bits 12/16 toggle fix.
825         More space for error message variable in mformat
826         Typo fix in mren.1
827 v19960710
828         Fix for CPU names with dots in autoconfigure
829         Some new device descriptions
830         FreeBSD fixes
831 v19960624
832         Set XDF mode when formatting an XDF disk (makes sense, after all...)
833 v19960623
834         XDF seems to work. Yeah!
835 v19960620
836         More ED fixes. More parameter size fixed for 64bit.
837 v19960609
838         Beginning of ED and 5 1/4 HD XDF support (doesn't work yet for
839         ED)
840 v19960528
841         Make vold and "raw" floppy drive accesible simultaneously on
842         Solaris by calling one A: and the other B:
843         Add missing mbadblock LINK in Makefile.in
844 v19960527
845         Inserted missing newline character
846 v19960525
847         Treat number of heads or sectors as chars. The BIOS wouldn't
848         allow bigger numbers anyways, thus big numbers are probably
849         due to errors.
850 v19960524
851         Pattern match fix.
852         Geometry setting for HP/UX
853 v19960522
854         Changed auto array in codepage to malloc'ed one in order to
855         work around buggy compilers
856         OSF ALPHA devices
857         Pointers to other doc in the INSTALL file
858 v19960516
859         Do no longer be confused by deleted VSE's
860         Define MAXPATHLEN for SCO
861         Missing lockf prototype for SCO
862 v19960514
863         Handle DEBUG flag by autoconf
864         Added Host vendor to compile flags in order to handle Sinix
865         Better Sinix handling in devices.c
866         Only print duplicate VSE messages when running with DEBUG
867         Fix mlabel exit code
868         Read-only locking
869         Doc fixes
870         Xcopy fixes for Sysv
871 v19960512
872         3.0 released.
873 v19960508
874         pre4-3.0. Lots of bug fixes. Texinfo file
875 v19960502
876         pre-3.0
877 v19960501
878         use autoconf to get rid once and for all of those pesky OS
879         dependencies.
880 v19960429
881         use sys/termio instead of sys/termios to please AIX
882 v19960427
883         more spelling fixes.
884 v19960426
885         Speling fixes
886 v19960424
887         Mmount arg parsing bug fix
888 v19960422
889         New partition configuration variable.
890 v19960419
891         Spelling fixes, removed warning in README, IRIX floppy devices
892 v19960214
893         More Alpha streamlining
894 v19960213
895         Alpha patches (64 bit clean-ness)
896         AIX patches (built in drive names)
897         Raw tty patches (no need to type return when confirming an action
898 v19960131
899         Solaris patches
900         Replaced include strings.h by string.h everywhere where applicable
901         Changed thousands separator in mdir from a dot to a space to
902         please both Americans and Europeans.
903         Fixed memory allocation bug if no "constant device" is present.
904         #defined strtoul to atol for SunOS
905 v19960121
906         Minor cleanup, released 2.5.4
907 v19951205
908         Added "magic" header to manpages to have man run them through tbl
909 v19951209
910         MTOOLS_LOWER_CASE is back, various small bug fixes over
911         Tuesday's changes
912 v19951205
913         Bus strike in Grenoble! Well, let's do something useful and
914         re-arrange the configuration file syntax :-)
915         The syntax has become much more flexible now, and also
916         includes items which used to be only accessible via
917         environmental variables.
918         Moreover, it is now possible to include character translation
919         tables in line.
920 v19951126
921         Fixed another Atari disk bug: Atari disks sport a bogus
922         "number of hidden sectors"
923 v19951125
924         Fixed missing zero-terminator in autorenamed long names
925         MTOOLS_SKIP_CHECK now implies MTOOLS_FAT_COMPATIBILITY.
926 v19951124
927         Fixed small quoted-printable-induced typo in the Makefile.
928         <rant>
929         Folks, please don't use quoted-printable. It sometimes changes
930         the CONTENT of your messages. Even the MIME RFC's acknowledge this.
931         Case in point: £400 gets transformed into =A3400, which looks
932         like 3400 pounds to a person unaware of this MIME "feature".
933         </rant>
934 v19951123
935         Mformat now puts a 12 bit FAT on ED to better match Messy DOS'
936         behavior.
937 v19951115
938         Added ability to do mcopy e: to copy all files from the root
939         directory of e:
940         New Xdf-less Linux target in the Makefile
941         Relaxed sanity check to let pass wonky Atari disks whose FAT
942         begins with 3 zero bytes.
943         Make the check of the initial fat bytes conditional on
944         mtools_skip_check
945         Corrected "testna=" bug
946         Upped minimal sector size to be 256 (instead of 128). This
947         helps 2m30
948 v19951112
949         2m30 compatibility
950         Manpage update
951         2m checksum bug fix
952         Ability to mformat 2m disks
953 v19951107
954         Xdf bug fix (dev parameters always set to Xdf, even if it
955         wasn't really an Xdf disk)
956         Fixed YAHB (yet another hash table bug :) ) . Hope this one's
957         the last.
958         Centralizing most env-var handling.
959         Update of the mtools manpage.
960         Xdf is now optional, and only active if MTOOLS_USE_XDF is
961         set. Saves a few milliseconds of startup time on non Xdf
962         disks.
963         Some lawyer-proofing, just in case :)
964 v19951106
965         Fast xdf code (finally!)
966         Minor performance enhancements here and there.
967         Names which are all lower case now generate a long name entry
968         (according to Steve Searle, that's how Win'95 behaves).
969 v19951029
970         Character translation table fixes. Other name fixes.
971 v19951026
972         Put restrictions on long names to better match Win'95.
973         (suggested by Steve Searle)
974         Reworked autorename code. Catch SIGHUP signal
975         Added missing file close to main loop
976         Changed name of the "ask for action" command line flag to 'm',
977         and used 'a' for 'Autorename'.
978 v19951024
979         Removed infinite loop bug in hash.c, which occurred when the
980         hash table was filled with deleted entries.
981 v19951023
982         added Atari ST-style serial numbers (they live in the banner)
983         fixed a troff bug in mtools.1
984         Both changes were suggested by D. Hugh Redelmeier (hugh@mimosa.com)
985 v19950916
986         v2.5.3 released (after lots of fixes)
987 v19950904
988         v2.5.2 released
989 v19950904
990         mdir.c: initialized "files" and "blocks" to avoid complaint by GCC
991         mattrib.c: initialized "code" to avoid complaint by GCC
992 v19950904
993         Based on comments by Paul Slootman <paul@ahwau.ahold.nl>:
994         init.c: fs_init(): initialized disk_size to 0.  The section
995                 which previously initialized this is ifdef'd out.  Why?
996         Makefile, device.c: Passed ETCDIR (e.g. /etc or /etc/default)
997                 Gee, the Makefile is pretty ugly!  It might be good to start
998                 thinking about autoconfigure, or at least some cleanup.
999         Makefile, mformat.c: use -DSOLARIS2, use srand48()/rand48()
1000         msdos.h, file.c, mdir.c: prefixed YEAR/MONTH/DAY/HOUR/MINUTE/
1001                 SEC with DOS_ to avoid conflicts with <sys/time.h> on SVR4
1002         devices.c: use %i instead of %d to allow different bases
1003         parse.c: Changed comment for get_name()/get_path(); need to
1004                 revisit this after deciding on default case behavior
1005         devices.c: load_devices(): fixed bad fprintf, line 748
1006         parse.c, mformat.c, misc.c: replaced expressions like
1007                   "if (islower(foo)) foo=toupper(foo)" with "foo=toupper(foo)"
1008                 
1009 v19950829
1010         v2.5.1 released
1011
1012 v19950829
1013         Based on comments by Martin Kraemer <Martin.Kraemer@mch.sni.de>:
1014                 Bug fixes for compile errors and core dumps under SINIX-D 5.41
1015                 (Siemens SVR4):
1016                 plain_io.c
1017                 mk_direntry.c
1018                 vfat.h
1019
1020 v19950822 v2.5 released
1021
1022 v19950820 DCN
1023         Change null-fill for unused remainder of VSE to 0xff fill for
1024         both upper and lower character (just one null for termination)
1025         This seems to better match Win95's behavior; Win95 had been
1026         complaining about bogus characters
1027         file_name.c: unicode_write()
1028
1029 v19950820 DCN
1030         Commented out enforcement of VSEs being in order.  Win95 likes
1031         to put them exactly backwards, so we'd better tolerate getting
1032         them any way they might come!  Not sure what is lost by losing
1033         these checks, but it seems to be OK.
1034
1035         directory.c: dir_read()
1036
1037 Copying and distribution of this file, with or without modification,
1038 are permitted in any medium without royalty provided the copyright
1039 notice and this notice are preserved.