Commit Graph

14 Commits

Author SHA1 Message Date
lukem 1b81d6353d remove third argument (`int ns') from ffs_sb_swap(), and let ffs_sb_swap()
determine the endianness of the `struct fs *o' superblock from o->fs_magic
and set needswap as necessary, rather than trusting the caller to get
it right.  invariably, almost every caller of ffs_sb_swap() was calling it
with ns set to the wrong value for ns anyway!
ansi KNF ffs_bswap.c declarations whilst here.

this fixes all sorts of problems when trying to use other-endian file systems,
notably the kernel trying to access memory *way* off, possibly corrupting or
panicing, and userland programs SEGVing and/or corrupting things (e.g,
"fsck_ffs -B"  to swap a file system endianness).

whilst the previous rev of ffs_bswap.c (1.10, 2000/12/23) made this problem
worse, i suspect that the problem was always there and previous versions
just happened not to trash things at the wrong time.

FFS_EI should now be a lot more stable.
2001-08-17 02:18:46 +00:00
ross 029a64cc29 from Erik Bertelsen <erik@mediator.uni-c.dk>
{ put } { in } { lots } { of } { these } { to } { shut } { up } { egcs }
1998-08-25 19:18:12 +00:00
bouyer 08371645ee Add support for non-native endian FFS.
Clear the clean flag in the SB when an inode has been cleared.
1998-03-18 16:51:31 +00:00
lukem c697e3e2bf resolve sccsid conflict 1997-09-16 02:33:48 +00:00
lukem e40e4b2a93 - fix use of .Nm
- deprecate use of register
- cleanup for WARNS=1
1997-09-14 08:44:07 +00:00
cgd 0114e805ce convert to new RCS Id conventions; reduce my headache 1995-03-18 14:54:19 +00:00
mycroft 6e6fa2798b Make this more type safe. 1995-01-30 20:02:47 +00:00
mycroft 8ffd59e28b err(3)/warn(3) cleanup 1994-09-23 02:18:30 +00:00
mycroft 175ecf65e1 Update from 4.4-Lite. 1994-06-08 18:54:38 +00:00
cgd 4417e58658 need <sys/time.h> 1994-04-25 18:17:04 +00:00
mycroft e9d867ef50 Add RCS identifiers. 1993-08-01 17:54:45 +00:00
cgd 06be60083d changed "Id" to "Header" for rcsids 1993-03-23 00:22:59 +00:00
cgd 346aa5dd48 added rcs ids to all files 1993-03-22 08:04:00 +00:00
cgd 61f282557f initial import of 386bsd-0.1 sources 1993-03-21 09:45:37 +00:00