Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 28 Sep 1996 14:33:49 +0200 (MET DST)
From:      Robert Eckardt <roberte@mep.ruhr-uni-bochum.de>
To:        luigi@labinfo.iet.unipi.it (Luigi Rizzo)
Cc:        hackers@freebsd.org
Subject:   Re: mtools3.0
Message-ID:  <199609281233.OAA21935@ghost.mep.ruhr-uni-bochum.de>
In-Reply-To: <199609281029.MAA10680@labinfo.iet.unipi.it> from Luigi Rizzo at "28. Sep. 96 12:29:20"

next in thread | previous in thread | raw e-mail | index | archive | help
> It looks like there is finally a version of mtools supporting VFAT
> names and the like. The URL is

Are you talking about mtools-3.0.tgz on the 2.1.5-CD ? :-)
But it didn't work as expected (see below).

> 	http://wauug.erols.com/pub/knaff/mtools/
> 
> For those who have looked at mtools2.0.7, the code appears to be
> significantly cleaner than the previous versions. Especially, one
> program does all depending on argv[0], whereas current mtools have
> 10-15 different executables.
> 
> Under FreeBSD it compiles almost correctly (one sys_errlist[]
> declaration must be fixed), although is it missing the machine-dependant

There's a patch in ports.

> part which declares devices and initializes them.  I believe both
> things can be folded in from 2.0.7 -- I might have some time to
> look at this late next week.

There's an enormous advantage of configuring from ~/.mtoolsrc
Nevertheless, I prefer to add
        {"$MTOOLS_M",           'M', GEN},
        {"$MTOOLS_N",           'N', GEN},
        {"$MTOOLS_O",           'O', GEN},
to the predefined devices. That allows me to set the device `on the fly'
via the environment to any file (dd'd disks).
(Just `setenv MTOOLS_M /this/dos/disk; mdir m:')


However, I had some trouble with it when I recompiled it.

It seems that FreeBSD doesn't allow locking of /dev/[r]fd(01)*
Thus, you get some mysterious errors when using 'mcopy FILE a:'
(Actually, you get EOPNOTSUPP `Operation not supported')

I disabled locking completely by inserting a `return 0' in
lock_dev() in plain_io.c
  int lock_dev(int fd)
  {
+         return 0;       /* Locking of floppy dev doesn't work ??? */ /*RE*/
  #if (defined(HAVE_LOCKF) && defined(F_TLOCK))
          if (lockf(fd, F_TLOCK, 0) < 0)

Had anyone else the same problem ?
Is it FreeBSD's correct behaviour ?

Regards,
Robert



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199609281233.OAA21935>