omfs: check bounds on block numbers before passing to sb_bread
authorBob Copeland <me@bobcopeland.com>
Sat, 6 Sep 2008 21:51:53 +0000 (17:51 -0400)
committerBob Copeland <me@bobcopeland.com>
Sat, 10 Jul 2010 18:37:06 +0000 (14:37 -0400)
commitf068272cb2f134a194b93e94a8e0672bfce48cd8
treec6a2a67951646eee3d040b732b384fa5c98fe78c
parent70d9e384aa7df681cfffd65947af72b22e86690e
omfs: check bounds on block numbers before passing to sb_bread

In case of filesystem corruption, passing unchecked block numbers into
sb_bread can result in an infinite loop in __getblk().  Introduce a wrapper
function omfs_sbread() to check the block numbers and to also perform the
clus_to_blk() scaling.

Signed-off-by: Bob Copeland <me@bobcopeland.com>
fs/omfs/dir.c
fs/omfs/file.c
fs/omfs/inode.c
fs/omfs/omfs.h