httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ricardo Cantu <rica...@smartcsc.com>
Subject Re: mod_fcgid
Date Tue, 29 Sep 2009 19:09:22 GMT
On Tuesday 29 September 2009 12:14:51 pm you wrote:
> On Tue, Sep 29, 2009 at 12:51 PM, Ricardo Cantu <ricardo@smartcsc.com>wrote:
> > > Ricardo Cantu wrote:
> > >
> > > That's the problem with mod_fcgid right now with out the patch.
> > > argv[0] is different but mod_fcgid is not considering it different. It
> > > is lumping together by inode only and not paying attention to basename
> >
> > (argv[0]).
> >
> > > Which can be different when using symbolic links.
> > > The patch is so it can properly respect your statement.
> > >
> > > Ah ha - I misread your statement.
> >
> > So, is the patch acceptable?
> 
> Doesn't the patch require the symlink to reside in the same directory as
>  the actual executable in order to be effective?
No

> 
> Wouldn't tracking the devno/inode of the link itself (apr_lstat() instead
>  of apr_stat()) handle the issue more cleanly?  It wouldn't work for hard
>  links, but it should be a sufficient capability.
> 
> As suggested in an earlier mail, why not always fully respect the symlink
>  as distinct from other filesystem paths that resolve to the same
>  executable code?
> 

Thought about all the possible scenarios and as far as i can see respecting 
basename (argv[0] ) is the one that handles all of them. For instance using 
apr_lstat would interfere with someone who likes to put all executables in one 
directory  then link them to what ever other directory they need it in.

So
/usr/bin/program1
ln -s /usr/bin/program1 /var/www/virtual1/bin/program1
ln -s /usr/bin/program1 /var/www/virtual2/bin/program1

Needs to consider all program1's the same.

On the other hand:

/usr/bin/program1
ln -s /usr/bin/program1 /var/www/virtual1/bin/program2
ln -s /usr/bin/program1 /var/www/virtual2/bin/program3

Needs to consider program1,program2,program3 different.


Mime
View raw message