libcdio-help
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Libcdio-help] incorrect iso-read from larger than 4G DVD .iso files


From: Ireadso
Subject: [Libcdio-help] incorrect iso-read from larger than 4G DVD .iso files
Date: Thu, 01 Dec 2011 00:33:38 -0800
User-agent: Internet Messaging Program (IMP) H3 (4.1.2)

2010-08-28 Kamil Ignacak wrote:
Reading large ISO 9660 file systems (over 4GB) results in a file that has ISO header at the beginning of file, and a copy of it right after (2^32 - 1)th byte.

Indeed a problem.  Here is a test case.  Grab the 4.1G file

http://ftp.scientificlinux.org/linux/scientific/6.1/x86_64/iso/SL-61-x86_64-2011-11-09-Install-DVD.iso

Use other tools and see an OK XML file at repodata/repomd.xml

Then do

iso-read -i /drive/builtinhdd03/stuff/leo/Downloads/SL-61-x86_64-2011-11-09-Install-DVD.iso -e repodata/repomd.xml -o ~/test.txt ; more ~/test.txt

and see bad data.

Apparently Kamil was right with his analysis:
You need to be careful when reading ISO 9660 file
systems from DVDs.
If the file system is larger than 4GB, libiso9660 can't handle it properly. One of library functions (iso9660_iso_seek_read()?) uses byte offset parameter, and that offset is wrapped back to zero when it reaches 2^32 bytes.

Tried with libcdio 0.81, 0.82 and today's git 0.84.  Running on a couple 64 bit Enterprise Linux flavors, i.e. Fedora 14 and SL 6.1.

Could someone fix this or give a hint, so we can pull something from git that works?

These >4G DVD .iso are here to stay.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]