On Tue, 2015-02-03 at 12:10 +0100, Justus Winter wrote: > Hello :) > > Quoting Svante Signell (2015-02-02 12:26:06) > > Confusing thing is: Printouts in > > libnetfs/dir-lookup.c:netfs_S_dir_lookup() are not triggered, but > > libdiskfs/dir-lookup.c:diskfs_S_dir_lookup are. > > libnetfs is built into fakeroot itself, but not libdiskfs, which is > > built into ext2fs.static. libdiskfs functions does not seem to be faked. > > That's not so surprising. fakeroot does not fake all functions, any > message it does not understand is passed through as-is. Also, in the > case of dir_lookup, fakeroot does some of the dir_lookup-related stuff > (like retries) on behalf of the client. That could explain why you > see messages from libdiskfs and not from libnetfs. I don't see why > that could cause problems though. > > In your particular case, did you check whether the error is right, > i.e. it tried to do something to the file on the ext2fs that the user > is not allowed to do ?
Well, the printouts from libdiskfs shows a uid and gid of 1000, i.e they are not faked. Nevertheless, libdiskfs logs show: Block 1: libdiskfs/diskfs_S_dir_lookup: check perms on existing node libdiskfs/diskfs_S_dir_lookup: np->dn_stat.st_uid=1000, np->dn_stat.st_gid=1000 libdiskfs/diskfs_S-dir_lookup: np->dn_stat.st_mode=100444 libdiskfs/diskfs_S-dir_lookup: idvec_contain gotit (op)=0 Block 2: libdiskfs/diskfs_S_dir_lookup: check perms on existing node libdiskfs/diskfs_S_dir_lookup: np->dn_stat.st_uid=1000, np->dn_stat.st_gid=1000 libdiskfs/diskfs_S-dir_lookup: np->dn_stat.st_mode=100444 libdiskfs/diskfs_S-dir_lookup: idvec_contain gotit (op)=0 libdiskfs/diskfs_S_dir_lookup: flags & O_WRITE libdiskfs/diskfs_S_dir_lookup: flags & O_READ=1, flags & O_WRITE=2, flags & O_EXEC=0 libdiskfs/diskfs_S-dir_lookup: np->dn_stat.st_mode=100444 libdiskfs/diskfs_S_dir_lookup: error = Permission denied (and so on) when issuing /usr/bin/fakeroot-hurd sh -c "debian/rules binary" (fails): Block 1 + Block 2 but not with /usr/bin/fakeroot-hurd sh -c "make" (succeeds): Block 1 cat Makefile default: dh_md5sums -plibgnatvsn4.9-dev and dh_md5sums is python code issuing: cd debian/libgnatvsn4.9-dev >/dev/null; find . -type f ! -regex './DEBIAN/.*' -printf '%P\0' | LC_ALL=C sort -z | xargs -r0 md5sum > DEBIAN/md5sums As Block 2 above shows "dir_lookup flags & O_WRITE !=0" and the test if (!error && (flags & O_WRITE)) causes the EACCESS error. So the flags are not correctly set?? The files are moved from debian/tmp/usr/lib/ada/adalib/gnatvsn/ to debian/libgnatvsn4.9-dev/usr/lib/ada/adalib/gnatvsn with a previous dh_movefiles command. All files *.ali have file mode 10444 e.g. -r--r--r-- 1 srs srs 2267 Dec 18 00:38 alloc.ali There are other permission denied messages later on in the build, I've just recreated a subset of the package build process. -- To UNSUBSCRIBE, email to debian-hurd-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/1422963752.5057.57.ca...@g3620.my.own.domain