From owner-freebsd-hackers Sun May 5 16:03:51 1996 Return-Path: owner-hackers Received: (from root@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id QAA17149 for hackers-outgoing; Sun, 5 May 1996 16:03:51 -0700 (PDT) Received: from eac.iafrica.com (h196-7-192-150.iafrica.com [196.7.192.150]) by freefall.freebsd.org (8.7.3/8.7.3) with SMTP id QAA17143 for ; Sun, 5 May 1996 16:03:46 -0700 (PDT) Received: (from rnordier@localhost) by eac.iafrica.com (8.6.12/8.6.12) id BAA00250; Mon, 6 May 1996 01:00:47 +0200 From: Robert Nordier Message-Id: <199605052300.BAA00250@eac.iafrica.com> Subject: Re: dosfsck anyone? To: terry@lambert.org (Terry Lambert) Date: Mon, 6 May 1996 01:00:46 +0200 (SAT) Cc: joerg_wunsch@uriah.heep.sax.de, freebsd-hackers@FreeBSD.ORG, rnordier@iafrica.com In-Reply-To: <199605052105.OAA20101@phaeton.artisoft.com> from "Terry Lambert" at May 5, 96 02:05:15 pm X-Mailer: ELM [version 2.4 PL24 ME8a] Content-Type: text Sender: owner-hackers@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk On Sun, 5 May 1996, Terry Lambert wrote: > > J"org writes: > > As Robert Nordier wrote: > > > > > A preen option is a Good Thing. 'fsck' itself has code to parse > > > /etc/fstab, skipping non-ufs filesystems. One solution would be > > > to incorporate equivalent code in 'dosfsck'. Possibly a more > > > elegant approach (which may be what you had in mind) would be to > > > handle the /etc/fstab parsing in a generic front-end. > > > > I rather thought of it the other way round: similar to mount(8), keep > > fsck(8) being the generic front-end that does the fstab parsing and > > dispatching. Much like mount(8), it could have builtin knowledge > > about some file system types (a builtin ufs checker, and the wisdom > > that procfs, swap, and cd9660 don't require checking at all), while it > > will call {/usr/sbin,/sbin}/fsck_${fstype} for all other file system > > types. > > Foo. > > man getfsent > > There are already parsing routines for that file; don't write your > own code to do it. I missed 'getfsent'. Comes of browsing the 'fsck' code too unquestioningly. > The things should be calling "fstyp" anyway, which should call an > ioctl on the device to return FS type from the list of recognized > types. > > The mount code for each FS needs this information anyway, so it can > tell if it should try mounting it to avoid a panic when you try to > mount an inappropriate device. The code should be broken out for > an iterative call "fstyp" interface. Presumably this sorts out the problem of doing a mount_msdos on (say) an HPFS and actually getting away with it, as has happened. I guess, for mount_msdos, DOS compatibility can't be pursued to the extent of not requiring a boot sector BPB at all, and just deriving all FS parameters. -- Robert Nordier