This is the UFS2 version of ffsrecov, heavily (and I do mean _heavily_) based
on John-Mark Gurney's program of the same name.  It does basically the same
thing, only it's a little more resistant to crashes caused by bad pointers,
offsets and the like, and it does a little more than his did.  Don't contact
him for problems with this program, it's definitely _my_ fault if it breaks.

This program is not ready for prime time.  It has some shortfalls, it has a
bunch of new options that are mostly undocumented and the manpage could
stand to be rewritten.  One _good_ thing is that it now uses the libufs
library and is therefore not as dependent on carrying around low-level code.

On the other hand, it worked for me.  Using this tool, I was able to recover
almost all of a several-hundred-gigabyte file system that had been stomped
by a misconfigured RAID controller.  (That's why I wrote the thing in the
first place, in fact.)  With the right knowledge and a lot of patience,
it is possible to recover most or all of a trashed file system, at least if
it's not _too_ trashed.

I'm releasing it under the Berkeley two-clause license in the hope that
someone with more time will pick it up, polish it and make something
a little more useful out of it.

Frank Mayhar
frank@exit.com