[PATCH] isofs: more "corrupted iso image" error cases

Linux Kernel Mailing List <[email protected]> Fri, 25 Mar 2005 23:50:49 +0000
Newsgroups gmane.linux.kernel.commits.2-4
Message-ID <[email protected]>
ChangeSet 1.1484, 2005/03/25 20:50:49-03:00, [email protected]

	[PATCH] isofs: more "corrupted iso image" error cases
	
	Michal Zalewski <[email protected]> discovers range checking flaws in
	iso9660 filesystem.
	
	http://marc.theaimsgroup.com/?l=bugtraq&m=111110067304783&w=2
	
	CAN-2005-0815 is assigned to this issue.
	
	From: Linus Torvalds <[email protected]>
	
	isofs: more "corrupted iso image" error cases
	
	Thanks to Michal Zalewski for testing.
	
	Signed-off-by: Chris Wright <[email protected]>



 inode.c |    2 ++
 1 files changed, 2 insertions(+)


diff -Nru a/fs/isofs/inode.c b/fs/isofs/inode.c
--- a/fs/isofs/inode.c	2005-03-26 13:02:54 -08:00
+++ b/fs/isofs/inode.c	2005-03-26 13:02:54 -08:00
@@ -609,6 +609,8 @@
 	  s->u.isofs_sb.s_log_zone_size = isonum_723 (h_pri->logical_block_size);
 	  s->u.isofs_sb.s_max_size = isonum_733(h_pri->volume_space_size);
 	} else {
+	  if (!pri)
+	    goto out_freebh;
 	  rootp = (struct iso_directory_record *) pri->root_directory_record;
 	  s->u.isofs_sb.s_nzones = isonum_733 (pri->volume_space_size);
 	  s->u.isofs_sb.s_log_zone_size = isonum_723 (pri->logical_block_size);