Thomas Stewart d27d7a9a78 ufs: permit mounting of BorderWare filesystems
I recently had to recover some files from an old broken machine that was
running BorderWare Document Gateway.  It's basically a drop in web server
for sharing files.  From the look of the init process and using strings on
of a few files it seems to be based on FreeBSD 3.3.

The process turned out to be more difficult than I imagined, but to cut a
long story short BorderWare in their wisdom use a nonstandard magic number
in their UFS (ufstype=44bsd) file systems.  Thus Linux refuses to mount
the file systems in order to recover the data.  After a bit of hunting I
was able to make a quick fix to fs/ufs/super.c in order to detect the new
magic number.

I assume that this number is the same for all installations.  It's quite
easy to find out from ufs_fs.h.  The superblock sits 8k into the block
device and the magic number its 1372 bytes into the superblock struct.

# dd if=/dev/sda5 skip=$(( 8192 + 1372 )) bs=1 count=4 2> /dev/null | hd
00000000  97 26 24 0f                                       |.&$.|
#

Signed-off-by: Thomas Stewart <thomas@stewarts.org.uk>
Cc: Evgeniy Dushistov <dushistov@mail.ru>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2010-05-27 09:12:43 -07:00
..
2010-05-27 09:12:41 -07:00
2010-04-30 14:52:51 -05:00
2009-06-17 00:36:36 -04:00
2010-05-25 08:07:04 -07:00
2010-05-21 18:31:20 -04:00
2010-05-17 05:27:42 +02:00
2010-05-25 08:07:03 -07:00
2010-05-21 18:31:16 -04:00
2010-01-26 22:22:26 -05:00
2010-05-25 08:07:07 -07:00
2009-12-16 07:20:13 -08:00
2010-03-06 11:26:29 -08:00
2010-03-19 08:05:10 +01:00
2009-09-24 07:21:03 -07:00
2010-05-21 18:31:16 -04:00
2009-12-17 04:52:13 -05:00
2010-05-21 18:31:16 -04:00
2010-05-11 17:43:58 +02:00
2010-05-21 21:27:26 +02:00
2010-03-06 11:26:29 -08:00
2010-05-21 18:31:16 -04:00
2010-03-08 16:55:37 +01:00
2010-05-21 18:31:17 -04:00
2010-05-21 18:31:22 -04:00
2010-05-18 08:57:00 +10:00
2010-05-21 18:31:17 -04:00
2010-03-12 15:52:32 -08:00
2010-05-21 18:31:17 -04:00