Hi, While using autoreconf on a project I came across a cvs error: > cvs [init aborted]: cannot get working directory: Permission denied > cvs [checkout aborted]: cannot get working directory: Permission denied > find: `archive': No such file or directory > find: `archive': No such file or directory > autopoint: *** infrastructure files for version 0.16.1 not found; this is > autopoint from GNU gettext-tools 0.17 > autopoint: *** Stop. > autoreconf: autopoint failed with exit status: 1
I was able to get the same error if I tried to initialize a repository: > h@nebula:~/foo> cvs init > cvs [init aborted]: cannot get working directory: Permission denied Upon investigation the problem here is that one of the parent directories on the server leading to my home directory are not readable - there is no read flag but the executable flag is set. This setting allows me to access my home directories but forbids me to list all the available home directories on the machine. I was using cvs 1.12.13. The error happens to be due to cvs checking the readability of all the parent directories. The attached patch helped me to get over this problem. This patch forces cvs to use the system's `getcwd()` function. I'm not sure if it is clean, but it worked as a quick hack for me. Hence, I'm submitting it here. -- Sree Harsha Totakura
diff -ur cvs-1.12.13/lib/getcwd.c cvs-1.12.13.mine/lib/getcwd.c --- cvs-1.12.13/lib/getcwd.c 2005-09-19 23:12:20.000000000 +0200 +++ cvs-1.12.13.mine/lib/getcwd.c 2012-12-05 18:50:16.140954000 +0100 @@ -30,7 +30,7 @@ #include <stdbool.h> #include <stddef.h> -#include <fcntl.h> /* For AT_FDCWD on Solaris 9. */ +//#include <fcntl.h> /* For AT_FDCWD on Solaris 9. */ #ifndef __set_errno # define __set_errno(val) (errno = (val)) Only in cvs-1.12.13.mine/lib: getcwd.c~
_______________________________________________ Bug-cvs mailing list Bug-cvs@nongnu.org https://lists.nongnu.org/mailman/listinfo/bug-cvs