V3 minixfs: add missing directory type checking
authorDoug Graham <dgraham@nortel.com>
Tue, 22 Sep 2009 23:48:00 +0000 (16:48 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Wed, 23 Sep 2009 14:39:57 +0000 (07:39 -0700)
commit9f6c1333938c5d93da8be8f29f3b5469a3c00f95
treea0fdd0e3baffa1a997eb39f780b893337921a1d4
parent532f649f148bf70e6a5816d95fe55e6a065e8754
V3 minixfs: add missing directory type checking

There are a few places in the Minix FS code where the "inode" field of a
minix_dir_entry is used without checking first to see if the dirent is
really a minix3_dir_entry.  The inode number in a V1/V2 dirent is 16 bits,
whereas that in a V3 dirent is 32 bits.

Accessing it as a 16 bit field when it really should be accessed as a 32
bit field probably kinda sorta works on a little-endian machine, but leads
to some rather odd behaviour on big-endian machines.

[akpm@linux-foundation.org: coding-style fixes]
Signed-off-by: Doug Graham <dgraham@nortel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
fs/minix/dir.c