2009-08-28 Vladimir Serbinenko <phcoder@gmail.com>

* kern/file.c (grub_file_read): Check offset.
	* fs/hfs.c (grub_hfs_read_file): Remove unnecessary offset check.
	* fs/jfs.c (grub_jfs_read_file): Likewise.
	* fs/ntfs.c (grub_ntfs_read): Likewise.
	* fs/reiserfs.c (grub_reiserfs_read): Likewise.
	* fs/minix.c (grub_minix_read_file): Correct offset check.
	* fs/ufs.c (grub_ufs_read_file): Likewise.
This commit is contained in:
phcoder 2009-08-28 16:29:34 +00:00
parent b4f34077c8
commit 6f07b921bc
8 changed files with 21 additions and 24 deletions

View file

@ -290,8 +290,8 @@ grub_ufs_read_file (struct grub_ufs_data *data,
int blockcnt;
/* Adjust len so it we can't read past the end of the file. */
if (len > INODE_SIZE (data))
len = INODE_SIZE (data);
if (len + pos > INODE_SIZE (data))
len = INODE_SIZE (data) - pos;
blockcnt = (len + pos + UFS_BLKSZ (sblock) - 1) / UFS_BLKSZ (sblock);