bug-xorriso
[Top][All Lists]
Advanced

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

Re: "Calculated and written ECMA-119 tree end differ" under very specifi


From: Thomas Schmitt
Subject: Re: "Calculated and written ECMA-119 tree end differ" under very specific circumstances
Date: Sun, 31 Jan 2021 15:41:21 +0100

Hi,

i can reproduce the problem with most modern xorriso. (Grrrr.)
For now there is no need for you to invest more time.

Have my preliminary thanks. I'll report when i have found the cause and
a fix.

It suffices to have enough files with large xattr of any kind.
The files must have some well compressible KiB to lure zisofs.

  mkdir test_dir
  cd test_dir
  for i in $(seq -w 0 99)
  do
    n=050001"$i"
    dd if=/dev/zero bs=1024 count=10 of="$n" 2>/dev/null
    setfattr -n user.nfs_acl -v 
123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
 "$n"
  done

  xorriso -for_backup -outdev test.iso \
          -map . /a \
          -find / -type f -pending_data -exec set_filter --zisofs --

yields

  libisofs: WARNING : Calculated and written ECMA-119 tree end differ: 74 <> 75

Now i have to find the actual bug, fix libisofs, and produce
GNU xorriso-1.5.4.pl01 ... grrrr again. I missed the bug by half a day.

-----------------------------------------------------------------------

File foo3-151k.iso which you sent shows that the length of the directory
record list is underestimated, so that already the SUSP Continuation
Area of the directory is written one block higher than expected (63 rather
than 62). This mistake propagates through the rest of the ISO image.

The ISO file is reported empty, because xorriso aborted before the default
superblock was written. The session superblock at offset 32 exists, but
xorriso does not accept an ISO from overwritable medium which has no
superblock at offset 0.
This mount run would seem to succeed and let you view the file names
in /mnt/iso/a:
  mount -o sbsector=16 foo3.iso /mnt/iso
But the file content is misplaced by one block. Directory trees with more
complicated structure will probably cause i/o errors or show weird names
already on "ls -l".

-----------------------------------------------------------------------

Have a nice day :)

Thomas




reply via email to

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