Bug 98479

Summary: For big file size of cd9660
Product: Base System Reporter: hisamitu
Component: kernAssignee: freebsd-bugs (Nobody) <bugs>
Status: Closed FIXED    
Severity: Affects Only Me    
Priority: Normal    
Version: 6.1-RELEASE   
Hardware: Any   
OS: Any   

Description hisamitu 2006-06-04 09:20:17 UTC
 I had the file of big size (2G byte over) can read.
 At present, the problem doesn't occur in my environment. However, it is not division that tests everything.
 The agreement of cd9660 to the standard is not investigated. However, I thought that there is especially no problem because it is only reading.
 I changed to the source of 6.1-RELEASE.

diff -crN src/sys/isofs/cd9660/cd9660_node.h src-edit/sys/isofs/cd9660/cd9660_node.h
*** src/sys/isofs/cd9660/cd9660_node.h	Wed Mar 16 17:09:52 2005
--- src-edit/sys/isofs/cd9660/cd9660_node.h	Sun May 21 10:37:33 2006
***************
*** 42,48 ****
   * lookup on a 32-bit machine. If you are porting to a 64-bit
   * architecture, you should make doff_t the same as off_t.
   */
! #define doff_t	long
  
  typedef	struct	{
  	struct timespec	iso_atime;	/* time of last access */
--- 42,49 ----
   * lookup on a 32-bit machine. If you are porting to a 64-bit
   * architecture, you should make doff_t the same as off_t.
   */
! typedef	long long	doff_t;
! typedef	long long	isize_t;
  
  typedef	struct	{
  	struct timespec	iso_atime;	/* time of last access */
***************
*** 68,76 ****
  	doff_t	i_offset;	/* offset of free space in directory */
  	ino_t	i_ino;		/* inode number of found directory */
  
! 	long iso_extent;	/* extent of file */
! 	long i_size;
! 	long iso_start;		/* actual start of data of file (may be different */
  				/* from iso_extent, if file has extended attributes) */
  	ISO_RRIP_INODE	inode;
  };
--- 69,77 ----
  	doff_t	i_offset;	/* offset of free space in directory */
  	ino_t	i_ino;		/* inode number of found directory */
  
! 	isize_t iso_extent;	/* extent of file */
! 	isize_t i_size;
! 	isize_t iso_start;	/* actual start of data of file (may be different */
  				/* from iso_extent, if file has extended attributes) */
  	ISO_RRIP_INODE	inode;
  };

How-To-Repeat:  none.
Comment 1 Maxim Konovalov freebsd_committer freebsd_triage 2006-06-04 10:35:05 UTC
State Changed
From-To: open->closed

Duplicate of  kern/98477.