[Debburn-devel] Strange behavior with long names

graphmastur graphmastur at gmail.com
Tue Jul 2 21:45:53 UTC 2013


Note, that I'm referring to the cdrkit version when I talk about versions here.

So, I was originally working on version 1.1.7.1 on cygwin. I was using
this command:

mkisofs -f -o disc.iso -hfs -J -joliet-long -hide-hfs "$ISO_WIN/*"
-hide-hfs "$ISO_LINUX/*" -hide "$ISO_LINUX/*" -hide "$ISO_MAC/*"
-hide-joliet "$ISO_MAC/*" -hide-joliet "$ISO_WIN/*" -no-desktop
-mac-name -allow-lowercase -D -iso-level 4 -graft-points /=$ISO_WIN/
/=$ISO_MAC/ /=$ISO_LINUX/

Basically, it creates a multi operating system CD, showing only what I
want to specific Operating Systems. The variables ISO_WIN, ISO_LINUX,
and ISO_MAC are simply variables holding the location of a directory.

On 1.1.7.1, this command works fine with really long file names. With
anything after that, however, it does not work.


This is my directory structure:
Windows/
--anotherDirectory/
----reallyLongFileNameThatsOverACertainLimitIsAPossibleDuplicate.win
----reallyLongFileNameThatsOverACertainLimitOrAtLeastIHopeItIs.win
Mac/
--reallyLongFileNameThatsOverACertainLimitOrAtLeastIHopeItIs.mac
Linux/
--reallyLongFileNameThatsOverACertainLimitOrAtLeastIHopeItIs.txt


I hope that was understandable. Running it on 1.1.7.1, it gives:
Warning: creating filesystem that does not conform to ISO-9660.
Warning: Creating ISO-9660:1999 (version 2) filesystem.
Warning: ISO-9660 filenames longer than 31 may cause buffer overflows in the OS.
Warning: creating filesystem with Joliet extensions but without Rock Ridge
         extensions. It is highly recommended to add Rock Ridge.
Warning: -follow-links does not always work correctly; be careful.
genisoimage: Warning: no Apple/Unix files will be decoded/mapped
Total extents actually written (inc HFS) = 441
(Size of ISO volume = 400, HFS extra = 41)
Total translation table size: 753664
Total rockridge attributes bytes: 0
Total directory bytes: 2166
Path table size(bytes): 34
Max brk space used 50000
591 extents written (1 MB)

However, running on 1.1.9 gives this:
Warning: creating filesystem that does not conform to ISO-9660.
Warning: Creating ISO-9660:1999 (version 2) filesystem.
Warning: ISO-9660 filenames longer than 31 may cause buffer overflows in the OS.
Warning: creating filesystem with Joliet extensions but without Rock Ridge
         extensions. It is highly recommended to add Rock Ridge.
Warning: -follow-links does not always work correctly; be careful.
genisoimage: Warning: no Apple/Unix files will be decoded/mapped
Using reallyLongFileNameThatsOverACer000 for
/var/lib/jenkins/not-tracked/test/Windows/anotherDirectory/reallyLongFileNameThatsOverACertainLimitIsAPossibleDuplicate.win
(reallyLongFileNameThatsOverACertainLimitOrAtLeastIHopeItIs.win)
Total extents actually written (inc HFS) = 441
(Size of ISO volume = 400, HFS extra = 41)
Total translation table size: 753664
Total rockridge attributes bytes: 0
Total directory bytes: 2048
Path table size(bytes): 34
Max brk space used 26000
591 extents written (1 MB)

If you move everything in anotherDirectory up a level into Windows/,
it doesn't give the error, as far as I can tell. I'm assuming it has
something to do with the length of the path.

Thank you,

Justin Nesselrotte



More information about the Debburn-devel mailing list