Hi, Sizes are stored in a signed type for the cd9660 fs, hence we can't see >= 2G files. This is an old BSDism, and as I checked, it's been weeded out from (or never existed in) other OSS Unices, except for FreeBSD.
As a reference, see the appropriate NetBSD commit: http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/fs/cd9660/cd9660_node.h?rev=1.6&content-type=text/x-cvsweb-markup Regards, Csaba --- - 2006-02-15 17:47:24.231691000 +0100 +++ vfs/isofs/cd9660/cd9660_node.h 2006-02-15 14:36:36.000000000 +0100 @@ -78,10 +78,10 @@ struct iso_node { 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) */ + unsigned long iso_extent; /* extent of file */ + unsigned long i_size; + unsigned long iso_start; /* actual start of data of file (may be different */ + /* from iso_extent, if file has extended attributes) */ ISO_RRIP_INODE inode; };
