010526Released pre6-3.9.8 : getting rid of linux-gnu references is almost as difficult as exorcising the devil... 010526Released pre5-3.9.8 after fixing a couple of version numbers 010526Applied Adrian Bunk's patches, minus the Stallmanisms. De-stallmanized config.gues and config.sub files pre4-3.9.8 010521Fixed DELMARK translation of mcopy's -T option, pre3-3.9.8 010521Fixed #ifdef DEBUG statements, pre2-3.9.8 010520Released pre-3.9.8 010507Updated config.guess/config.sub to support Darwin Patch for converting contents of files from/to Dos' version of 8bit Ascii Fixed bug in to_unix function 010330Updated freebsd floppy device definitions 010325Fixes for floppyd to work with current protocol version of floppyd 010325Fixed parsing of Unix filenames ending with slash 010325Fixed file closing of floppyd 001213Fixed a cindex entry in documentation 001113Rewrote PDF rule to use pdflatex, rather than go through dvi (pdflatex output looks nicer) 001113Fixed JAZ Zip file overwrite bug (actually, this bug could occur on any disk reasonably full...) 001018Fix mzip manpage to include Linux in the list of supported OS'es 001009Protect against division by zero when reading BSD disks... 000829Documentation fixes 000820Hurd openflags fix in mainloop.c Added description for t option to mcopy man page Added -lbsd to list of libraries to be tested for LynxOS Unset LANG in mkmanpages Updated config.gues/config.sub Removed stale documentation for xcopy Fixed typo in mformat man page 000810Zip 250 support in mzip 000708Floppyd robustness 000703Variable initialization in mdir.c 000623Do not use offset_t on AIX ==> broken 000610Large disk fixes, especially for Solaris 000601Released Mtools-3.9.7 000528Mtools-pre2-3.9.7 released: some potential buffer overflows 000521Mtools-pre-3.9.7 released 000520Added devices for OpenBSD (the previous NetBSD/OpenBSD where wrong for OpenBSD) 000517Fixed a couple of floppyd bugs 000514Added texclean to make distclean, added new "pdf" target. 000510Did away with ipaddr_t and replaced it with IPaddr_t which is guaranteed not to crash anywhere... 000509Defined geometry for default a: devices on Linux and Solaris with vold 000502Carefully navigate Solaris' polluted namespace... 000501Suppressed bogus error message when mcopying to an existing file. 000429Fixed mformat problem with Fat32 (mformat didn't initialize the label and fat type fields in the boot sector, and the other mtools utils didn't check them) 000428Fixed two more scandisk problems: - the infosector should end with 0x55aa - When deleting a file, be sure to DELMARK the VSE's as well as the main entry 000428Fixed an evasive Fat32 bug: a parent directory entry pointing to the root should have an address of 0 instead of the more logical 2 000416Corrected mdir error handling Fixed a bug in mren (problem when renaming short file names) 000412Corrected a typo in error handling 000410Fixed size problem with Ctrl-Z. 000401(No joke): avoid setting volume serial number on "Old Dos" disks 000320- Re-aligned command line options with Dos - New -n/-N option for mlabel to change volume serial numbers - Mattrib -p escapes file names in order to handle file name containing spaces - Changed mformat serial number format 991121Fixed 2 bugs: - Mtools would never completely use all directory slots, because it overestimated space consumption by 1 - Mtools did not initialize the stat struct for pipes, and thus gave occasionnally bogus "Disk full" error messages 991011Rearranged tty open call so that it is only opened when actually needed 990807Added special case for 0xf7 media descriptor 990729Make O_NDELAY conditional everywhere 990715Return correct return value from mt_lseek, even if off_t is a 64 bit quantity 990712Treat OpenBSD the same as NetBsd 990630 Released 3.9.6 with the following fixes: - Typoes in xdf_io.c - Make Xdf work in nodma mode - Fix for mformatting MSS disks 9906281st attempt to release 3.9.6 with mostly minor fixes: - platform compatibility - automatic installation of info files - mdir's -X flag no longer implies "recursive" 9904193.9.5 released with mostly minor fixes: - Starting cluster numbers of "." directory entry - Copying of empty Files from Dos to Unix - Misc platform compatibility issues 990315Another embarrassing bug found, 3.9.4 released. When will this nightmare stop? 990314Mtools 3.9.3 released 990314Open BSD SCSI fixes & added GLIBC linux/unistd.h for llseek. These Glibc problems are potentially dangerous, and can lead to data loss. 990314Mtools 3.9.2 released 990310Fixed typo in plain_io.c 990307More rigor about signed vs unsigned issue. FreeBSD Scsi support 990223Allow for 2GB Jaz drives 990218Rewrote floppyd in C instead of C++ 990208More buffer fix 990112Buffer fix 990111"Big disk" fixes 990104OS/2 patch 981211Make sure that fat_type doesn't overwrite byte 62 with zero => disk unbootable 981204Added support for "replay" listing of mattrib. Cleaned up version number and date handling (date was not always accurate...) 981204Added geometry autodetection code for Linux harddisks to mpartition and mformat. Removed misleading references to "non-removable media" 981203Added boot sector template option for mpartition. Fixed mtools.1 man page. Mattrib -s e:/ fix 981031Man pages bug fixes 981029Fixed HP SCSI "big write" bug 980701Fixed debug mode in vfat.c 980629A few minor floppy related fixes (installation, and replacement for setenv function, which is absent from some platforms) 980523Added floppyd (remote access to floppy disks) 980522Updated mkmanpages script to dynamically get date and mtools version. Correct "removable media" error message to talk about /etc/mtools.conf instead of /etc/mtools. Do init_geom to read geometry if no geometry is set. 980514Mtools 3.9.1 released 980503Mformats makes disks which are readable both as partitioned and as plain 980405Corrected Tim Hoogasian's e-mail address 980404OS/2 additions 980331"Dirty end too big" mformat bug corrected 980330Corrected typoes for IRIX devices, use macros for attribute types, fix 0 length file bug. 980327Loop detection code Bigger array for SCSI command 980323GLIBC portability 980322OS/2 portabilty, GLIBC portability 980320Fixes related to Solaris new vold support 980317Fixed a few BSD typoes, and renamed ALLCFLAGS in the Makefile to CFLAGS for those makes that don't support implicit rules well enough 980310Mtools 3.9 released 980308Various Bugfixes (overwrite mode and directory cache) 980301Added mformat_only flag. 980130Fixed non-batchmode mcopy bug. Fixed shortname case bug 980130Minfo and mformat boot program bug fixes 980120Allow default block sizes per device which are not equal to 512 980108Allow and interpret back quotes in file names 980101Misc bugfixes 971231Scandir optimizations. Fixed nasty Heisenbug in hash.c. 971229Fixed integer width problem in fat.c, and minor bugs in hashtable. 971222More performance optization. Buffer handl ing redone. New "asynchronous mode". 971216Fixed mtype and mcheck. Started cleaning up out-of-memory handling 971215Jacked up performance, and corrected signal handling bugs. Also corrected various "Disk full bugs" 971212Fixed "Bad address" errors which occured when running mdu on empty files. When copying recursively, do not barf if a directory already exist at the target. Mcopy operates silently by default. 971212removed mwrite. Obsoleted long ago by mcopy 971211fixed mdir -X, added mattrib -X; document both. Fix doc for name clash handling 971210fixed polarity of sys_errlist. Renamed some include files which bore the same name as system include files. Fixed another memory leak in dir_grow. A/UX termio workaround. 971209fixed filedescriptor leak. Make mbadblocks stoppable. Doc fixes. Fixed one memory leak, another one further down the road remains... Fixed error handling in createDirectory. 971208bugfixes: mbadblocks, fat, unix quit, null pointers in mcopy... 971205Renamed it to pre3-3.9 due to mixup when shipping the pre2-3.9 version. No actual code change apart from patchlevel.h 971204Pre2-3.9. Added mpartion manpage. Added misc.o dependency to mkmanifest. Fixed mpartition bug with partitions with more than 1023 cylinders 971129Pre-3.9. Redid the mainloop logic, and got rid of lots of cruft in subdir.c and parse.c. It is now possible to put wildcards in the directory part of the filename. Design also became simpler, making it easyer to maintain this part in the future. Added a -u flag to mzip to temporarily unprotect a disk Added a test to mzip to prevent manipulation of mounted disks Added support for partitioned devices in mmount 971116Added mdu and recursive mdir 971112Fixed bugs in recursive copy stuff, added recursive mattrib, and fixed a few buffer overrun bugs 971110Added recursive copy and attribute conservation flags to mtools 971029Fix parse.c typo 971013Include Sys5 directories on SunOs in order to have a correct timestamp Detect Lilo disks 971006Correct vold typo 971002Use 8 sector clusters for 32-bit FATs: this is what Micro$oft user 970823Corrected gross bug in fat12_decode 970823Simplified fat bits handlings 970820Raw Scsi_io for SGI 970813Buffer.c and FAT bugfixes 970813More FAT32 fixes. New mshowfat command. 970813Fix FAT32 problem (FAT32 does not use the high nibble) 970812Detect presence of sys_errlist using autoconf instead of making its usage dependent on BSD. Fixed make texclean. Guard against corrupted "next free block" pointer in a FAT32 InfoBlock 970715Use root priviliges during scsi_init 970714Fixed close-on-exec bug. 970714Fixed #include in HP_UX. Sys/floppy.h is not known on all flavors of HP_UX 970713Fixed Makefile so that make -j works without errors. Fixed upper/lower bug in mmount 970708Released 3.8 970629Add option to mformat to keep boot sector, or to read it from a file. Added various flags to customize directory listing appearance and long name behavior 970629Fix bug in yesterdays fix. Also make sure to resize hash table if too many deleted entries accumulate. 970628Fixed yet another hash table bug 970619Yet another HPUX fix. 970619Fixed a segfault in mpartition 970617Removed a few Stallmanisms in config.guess 9706123.7 released 970611Corrected a few errors in new vold code 970610Removed extra &'s from string addresses. Added listing of current configuration to mtools -V Updated version number and date in mkmanpages 970604New Bebox patch. Removes almost all BEBOX specifities because they are no longer needed with the new DR9 release. Small fix for size detection of SCSI disks. 970524Fixed small typo in new vold code 970524Added partition consistency checks for accessing device. 970523New version of Solaris vold code 970516Solaris floppy geometry. Support for older MO disks (size returned in non-standard location) Corrected ftp address for fdutils 970504Updated README.BEBOX 970504Brought Makefile.Be and config.h.Be up to date with the recent changes 970504Add Ultrix to the list of OS'es which do not define their prototypes Small Makefile fix 970503Various "Next proofintg". * add VENDOR_, CPU_ and OS_ before machine type tags detected by autoconf. Next tends to be a frequently used variable * use utimes preferably before utime * try to include _all_ termios functions. * more precise detection of available termios functions 970501Added knowledge of Zip Tools Disk password to mzip. 970429Went back to using ALLCFLAGS in Makefile for those people who want to override CFLAGS 970426Added note about Alpha site to doc. 970423Prefer termios.h on Ultrix 970422Renamed missing_functions to missFuncs in order to accomodate operating systems with file name size limits. 970420Autoextend size for images that are too small. Moved BSD dependant #ifdef's after the inclusion of sys/param.h, as it is there where BSD is defined (sigh!) 970419Insist on the fact that mzip's -f flag only makes sense if given in addition to -e 970419Corrected typo in doc. 970417Removed read and write prototypes, they conflict on an Alpha! 970414More HP/UX fixes. 9704143.6 released 970414Do not stat any files in /dev/ on BEOS. Remove spurious system include files from non-sysincludes.h file 970413Fixed Zip disk eject 970412Added Sunos4 and SCO support to scsi.c. Use tzset before gettimeofday, except for BSD. Use Z: for a Zip drive, and J: for a Jaz drive instead of D: for both. Added machine specific libraries and CFLAGS for A/UX. 970410Various A/UX fixes. Changed scanning order for termio and termios due to problems with the other order on A/UX. 970405Print error message for wrong password. 970405Include mzip man page 970404Document new config flags introduced in 970204. On systems not supporting euid, do not bail out if both euid and ruid are 0. 970404Prevent mmove from moving directories into themselves in order to keep a tree-like directory structure 970403Fixes for mtools_no_vfat 970402Additional config file pointed by MTOOLSRC; possibility to switch off generation of VFAT long names. 970401HP/UX setresuid support. "Mcopy a: ." bugfix. 970331Renamed f_* functions into file_* in order to avoid a clash with a preprocessor macro named f_data on AIX. 970323Released 3.5, Solaris compatibility fix w.r.t. memmove 970323Released 3.4 970319Fixed location of configuration file in doc. 970318Fixed mlabel bug 970316More BSD & 64 bit changes 970308Added at_exit implementation for those boxes who have neither on_exit nor atexit. Added check to make sure the compiler handels structures in a sane way. 970307Backed out again of the traditional-cpp change on larry.jones@sdrc.com's advice 970306Added traditional-cpp in order to make mtools compilable on a Sun 970304Fixed nolock flag 970227BEOS fixes and support for SCSI devices with a sector size different from 512. 970225Fixed some preprocessor macros. Added texclean macro to Makefile 970224Clarified the documentation about the Bebox. 970224Released 3.3 970220Made Makefile "AIX-proof". Added precmd to config.c 970219Fixed typo in mdel. 970217Osf4 support. Released 3.2 970216Fixed Makefile typo, and fixed various bugs with renaming or moving dot or dot dot 970215Fixed streamcache.c bug 970214Added add-disk script and format.dat file 970214Fixed mrd e:xxx/, tested Xdf support 970210Strange mformat fixes... Dos always seems to assume a cluster size of at least 8 sectors and 512 root directory entries. Sigh! 970209FAT32 support, BeOS patches 970208Added more debugging code to mpartition and minfo. Added "packed" attribute to the partition structure. Cleaned up argument handling. 970207Fixed partition removal bug in mpartition.c 970206Fixed streamcache allocation bug. Clearer error message when trying to access a non-existant partition. 970205Added "packed" attribute to some fields of the vfat_subentry structure, in order to work around a bug in a gcc version for SunOS. Use getpass() for password prompting in mzip.c 970203Various small bug fixes 970202Fixed typoes in plain_io.c, mpartition.c and mtools.texi. Relaxed security in mpartition.c, so non-root users may print a partition, or perform any local changes to it. Mpartition now prints info to recreate partition. 970201Add mpartition command to partition Zip, Jaz and other Scsi devices. Chose between on_exit or atexit using autoconf. 970130Added minfo command to print disk geometry and other parameters. 970129Replaced atexit by onexit. Atexit barfed on SunOs. Replaced O_RDWR flag in mzip with O_RDONLY. Added precmd variable to execute commands before opening a given drive. 970127Shortened README, segregated config file pathnames into a separate file. 970125General cleanup, more enhancements to privilege handling. 970123Added debugging output to mzip. Made expand.c safe and still compatible with suid operation. Fixed mzip typo. Made device locking optional. 970122Added const qualifiers 9701203.1 Released 970116Added kludgy xcopy support 970111Only skip sys_errlist declaration on NetBSD (some older platforms might need this) 970110Upgraded to autoconf 2.12, fixed some Stallmanisms. Added device entry for LynxOs. 970107Use gettimeofday before tzset (for BSD). 970107Use correct location of signal.h. Removed declaration for sys_errlist. 970107BEOS patches by Marco Nelissen Removed some clashing prototypes 970103Prints privilege debugging message to stderr, and reopens SCSI file with root privileges. 961227Fixed typoes in mzip. Added pointer to html doc. 961226Fixed Linux Scsi ioctl. 961225Added warnings against cookies, fixed doc to reflect new set-uid policy. 961224Fixed typoes in privilege routines, and removed Heisenbergian parts of the debugging code. 961223Deleted prototypes for random() and srandom(): they *did* clash (on a DEC Alpha) 961222Solaris & SunOS privilege management. Fixed date entries in ChangeLog file. 961221Solaris ZIP fix. 961219Cosmetic mzip fixes. Add pointer to info doc to mtools.1 961219ISC addition. Doc fix for set_parameters ioctl. 961217Mformat doc fix. 961216Replaced zip_* by scsi_*, as these functions are not specifically relevant to the ZIP (they apply to the JAZ as well) Fixed documentation on -n flag for mcopy 961217Include termio before termios because of SCO Applied Jaz patch Do not declare timezone external variable on Ultrix, where it has a different type. 961215Changed floppy into rfloppy for HP/UX. 961214Added -Q option to mcopy, which aborts copying multiple files as soon as an error for one file is encounteres Removed useless -i option for mcopy Small devices.c portability fixes (ultrix and hpux) 961211Added mzip (eject ZIP disks) (Markus Gyger <mgyger@itr.ch>) Renamed mtest to mtoolstest to please pine. 961210Added warning about running mtools with root privs. 961209Fixed unitialized variable in fat.c and added example for Sun mtools.conf 961209Fixed comment in scripts/tgz 961207Fixed partition handling code (yes, again!) Added code to handle ZIP disks on Solaris/SunOS (many thanks to James P. Dugal (jpd@usl.edu)) 961203Proper permissions for main directory. 961202Renamed scripts/gz to scripts/tgz 961202Added raw devices for Solaris, apparently more performant Test first for tzset in autoconfigure (Solaris) 961202Segment fault due to change of buffer size fixed E-mail adress fixed 961117Lots of portability fixes. 961012Yet another typo fix for the partition table code. Oh Gawd, will this never stop? Fix for proper .mcwd pathname concatenations 961009Backed out partition table "fix": the original code was right after all 960920Corrected a few uninitialised variables 960918Corrected doc about devices file. 960917Added pointer to the doc to the README file 960913Partition table parsing fixed 960807Fujitsu DS/90 (UXP) support 960727ISC device dispatcher cleanup in mtools.h fat_bits 12/16 toggle fix. More space for error message variable in mformat Typo fix in mren.1 960710Fix for CPU names with dots in autoconfigure Some new device descriptions FreeBSD fixes 960624Set XDF mode when formatting an XDF disk (makes sense, after all...) 960623XDF seems to work. Yeah! 960620More ED fixes. More parameter size fixed for 64bit. 960609Beginning of ED and 5 1/4 HD XDF support (doesn't work yet for ED) 960528Make vold and "raw" floppy drive accesible simultaneously on Solaris by calling one A: and the other B: Add missing mbadblock LINK in Makefile.in 960527Inserted missing newline character 960525Treat number of heads or sectors as chars. The BIOS wouldn't allow bigger numbers anyways, thus big numbers are probably due to errors. 960524Pattern match fix. Geometry setting for HP/UX 960522Changed auto array in codepage to malloc'ed one in order to work around buggy compilers OSF ALPHA devices Pointers to other doc in the INSTALL file 960516Do no longer be confused by deleted VSE's Define MAXPATHLEN for SCO Missing lockf prototype for SCO 960514Handle DEBUG flag by autoconf Added Host vendor to compile flags in order to handle Sinix Better Sinix handling in devices.c Only print duplicate VSE messages when running with DEBUG Fix mlabel exit code Read-only locking Doc fixes Xcopy fixes for Sysv 9605123.0 released. 960508pre4-3.0. Lots of bug fixes. Texinfo file 960502pre-3.0 960501use autoconf to get rid once and for all of those pesky OS dependencies. 960429use sys/termio instead of sys/termios to please AIX 960427more spelling fixes. 960426Speling fixes 960424Mmount arg parsing bug fix 960422New partition configuration variable. 960419Spelling fixes, removed warning in README, IRIX floppy devices 960214More Alpha streamlining 960213Alpha patches (64 bit clean-ness) AIX patches (built in drive names) Raw tty patches (no need to type return when confirming an action 960131Solaris patches Replaced include strings.h by string.h everywhere where applicable Changed thousands separator in mdir from a dot to a space to please both Americans and Europeans. Fixed memory allocation bug if no "constant device" is present. #defined strtoul to atol for SunOS 960121Minor cleanup, released 2.5.4 951205Added "magic" header to manpages to have man run them through tbl 951209MTOOLS_LOWER_CASE is back, various small bug fixes over Tuesday's changes 951205Bus strike in Grenoble! Well, let's do something useful and re-arrange the configuration file syntax :-) The syntax has become much more flexible now, and also includes items which used to be only accessible via environmental variables. Moreover, it is now possible to include character translation tables in line. 951126Fixed another Atari disk bug: Atari disks sport a bogus "number of hidden sectors" 951125Fixed missing zero-terminator in autorenamed long names MTOOLS_SKIP_CHECK now implies MTOOLS_FAT_COMPATIBILITY. 951124Fixed small quoted-printable-induced typo in the Makefile. <rant> Folks, please don't use quoted-printable. It sometimes changes the CONTENT of your messages. Even the MIME RFC's acknowledge this. Case in point: □00 gets transformed into =A3400, which looks like 3400 pounds to a person unaware of this MIME "feature". </rant> 951123Mformat now puts a 12 bit FAT on ED to better match Messy DOS' behavior. 951115Added ability to do mcopy e: to copy all files from the root directory of e: New Xdf-less Linux target in the Makefile Relaxed sanity check to let pass wonky Atari disks whose FAT begins with 3 zero bytes. Make the check of the initial fat bytes conditional on mtools_skip_check Corrected "testna=" bug Upped minimal sector size to be 256 (instead of 128). This helps 2m30 9511122m30 compatibility Manpage update 2m checksum bug fix Ability to mformat 2m disks 951107Xdf bug fix (dev parameters always set to Xdf, even if it wasn't really an Xdf disk) Fixed YAHB (yet another hash table bug :) ) . Hope this one's the last. Centralizing most env-var handling. Update of the mtools manpage. Xdf is now optional, and only active if MTOOLS_USE_XDF is set. Saves a few milliseconds of startup time on non Xdf disks. Some lawyer-proofing, just in case :) 951106Fast xdf code (finally!) Minor performance enhancements here and there. Names which are all lower case now generate a long name entry (according to Steve Searle, that's how Win'95 behaves). 951029Character translation table fixes. Other name fixes. 951026Put restrictions on long names to better match Win'95. (suggested by Steve Searle) Reworked autorename code. Catch SIGHUP signal Added missing file close to main loop Changed name of the "ask for action" command line flag to 'm', and used 'a' for 'Autorename'. 951024Removed infinite loop bug in hash.c, which occurred when the hash table was filled with deleted entries. 951023added Atari ST-style serial numbers (they live in the banner) fixed a troff bug in mtools.1 Both changes were suggested by D. Hugh Redelmeier (hugh@mimosa.com) 950916v2.5.3 released (after lots of fixes) 950904v2.5.2 released 950904mdir.c: initialized "files" and "blocks" to avoid complaint by GCC mattrib.c: initialized "code" to avoid complaint by GCC 950904Based on comments by Paul Slootman <paul@ahwau.ahold.nl>: init.c: fs_init(): initialized disk_size to 0. The section which previously initialized this is ifdef'd out. Why? Makefile, device.c: Passed ETCDIR (e.g. /etc or /etc/defaults) Gee, the Makefile is pretty ugly! It might be good to start thinking about autoconfigure, or at least some cleanup. Makefile, mformat.c: use -DSOLARIS2, use srand48()/rand48() msdos.h, file.c, mdir.c: prefixed YEAR/MONTH/DAY/HOUR/MINUTE/ SEC with DOS_ to avoid conflicts with <sys/time.h> on SVR4 devices.c: use %i instead of %d to allow different bases parse.c: Changed comment for get_name()/get_path(); need to revisit this after deciding on default case behavior devices.c: load_devices(): fixed bad fprintf, line 748 parse.c, mformat.c, misc.c: replaced expressions like "if (islower(foo)) foo=toupper(foo)" with "foo=toupper(foo)" 950829 v2.5.1 released 950829 Based on comments by Martin Kraemer <Martin.Kraemer@mch.sni.de>: Bug fixes for compile errors and core dumps under SINIX-D 5.41 (Siemens SVR4): plain_io.c mk_direntry.c vfat.h 950822 v2.5 released 950820 DCNChange null-fill for unused remainder of VSE to 0xff fill for both upper and lower character (just one null for termination) This seems to better match Win95's behavior; Win95 had been complaining about bogus characters file_name.c: unicode_write() 950820 DCNCommented out enforcement of VSEs being in order. Win95 likes to put them exactly backwards, so we'd better tolerate getting them any way they might come! Not sure what is lost by losing these checks, but it seems to be OK. directory.c: dir_read()