Package: hurd
Version: 20000803
Hi,
I have found another symlink bug in isofs. The attached cdimg.gz file
contains the first 400kb of a Debian source package CD ROM, which contains
in the root dir:
ulysses:/cdrom# ls -l
total 39
-r--r--r-- 1 root root 2309 Mai 17 1999 CHANGES.txt
-r--r--r-- 1 root root 3842 Mai 17 1999 INSTALL.txt
-r--r--r-- 1 root root 21178 Mai 17 1999 Release-Notes
-r--r--r-- 1 root root 367 Mai 17 1999 TRANS.TBL
lr-xr-xr-x 1 root root 1 Mai 17 1999 debian -> ./
dr-xr-xr-x 3 root root 2048 Mär 21 1999 dists/
dr-xr-xr-x 4 root root 4096 Mai 17 1999 doc/
dr-xr-xr-x 8 root root 2048 Feb 2 1999 project/
Now, under the Hurd, stat()'ing INSTALL.txt makes the inode "debian" a copy
of the file! See what I mean in the following transcript (stat()'ing any of
the other directory entries doesn't change the status of "debian")
Script started on Thu Aug 17 02:48:25 2000
hurd:/tmp# ls -l cdimg
-rw-r--r-- 1 root root 409600 Aug 17 02:47 cdimg
hurd:/tmp# settrans x /hurd/isofs cdimg
hurd:/tmp# ls x
CHANGES.txt INSTALL.txt Release-Notes TRANS.TBL debian dists doc project
hurd:/tmp# ls -l x/debian
lr-xr-xr-x 1 root root 1 May 17 1999 x/debian -> .
hurd:/tmp# ls -l x/debian
lr-xr-xr-x 1 root root 1 May 17 1999 x/debian -> .
hurd:/tmp# ls -l x/INSTALL.txt
-r--r--r-- 1 root root 3842 May 17 1999 x/INSTALL.txt
hurd:/tmp# ls -l x/debian
-r--r--r-- 1 root root 3842 May 17 1999 x/debian
hurd:/tmp# exit
Script done on Thu Aug 17 02:50:21 2000
You see that the file size of debian is now the same as of INSTALL.txt, and
the content is identical (not shown in the typescript, but verified by me).
I have not had time yet to track this down. It is not related to my isofs
symlink fixes, because you get the same behaviour with the CVS version of
isofs, just that debian is not a link with this version in the first place,
but a zero-size executable.
This is also most likely not related to the get_directs weirdness I reported
in #63373, because I made a quick attempt to fix that, and it doesn't change
the above behaviour.
This is the root directory content of the CD in binary format:
F CHANGES.TXT;1 CHANGES.txt
L DEBIAN.;1 debian .
D DISTS dists
D DOC doc
F INSTALL.TXT;1 INSTALL.txt
D PROJECT project
F RELEASE-.;1 Release-Notes
D _DISK .disk
Thanks,
Marcus
--
`Rhubarb is no Egyptian god.' Debian http://www.debian.org Check Key server
Marcus Brinkmann GNU http://www.gnu.org for public PGP Key
[EMAIL PROTECTED], [EMAIL PROTECTED] PGP Key ID 36E7CD09
http://homepage.ruhr-uni-bochum.de/Marcus.Brinkmann/ [EMAIL PROTECTED]
cdimg.gz