Could it be that during forking a different effective user id is
set, which is what -x checks? are $<, $>, $( and $) all the same
under cgi and mod_perl?

(it sounds like /usr/bin/rcsdiff is not a symbolic link, which
could be treated differently maybe, followsymlinks, etc)

Niels L

> The mod_perl server and the CGI server are the same.  It's just a
> handler configured for CGI's for *.cgi and mod_perl for *.pl, and I've
> symlinked from a .pl to the .cgi.
>
> The web server for CGI and mod_perl and the command line run were all
> done as the same user.
>
> Code like this:
>
>       warn "$cmd is " . (-x $cmd ? "" : " not") ." EXECUTABLE\n" ;
>       warn `ls -l $cmd`;
>
> Yields this under mod_perl:
>
> /usr/bin/rcsdiff is  not EXECUTABLE
> -rwxr-xr-x  1 root root 49388 Sep 21  2004 /usr/bin/rcsdiff
>
> and this from the command line and
>
> /usr/bin/rcsdiff is  EXECUTABLE
> -rwxr-xr-x  1 root root 49388 Sep 21  2004 /usr/bin/rcsdiff
>
> and in a CGI:
>
> /usr/bin/rcsdiff is  EXECUTABLE
> -rwxr-xr-x  1 root root 49388 Sep 21  2004 /usr/bin/rcsdiff
>
> Same server, CGI vs mod_perl, different behavior.
>
> Probably not permissions.  But what?
>
> Eric


Reply via email to