Philippe M. Chiasson wrote:
[...]
So I guess it would be safe to use filetest 'access' in ModPerl-Registry
(at least on Linux), but I would worry about:

1. Other Uni*es and Win32

What about them?


Well, from a glance at pp_sys.c, it seems that Perl will do the right
thing and use access() if it's available. Otherwise, using filetest
'access' seems like it would revert to the good old behaviour.


I just meant that it could be worth verifying that. Who knows, possibly
some platforms _do_ provide access(), but it's behaviour is not
identical to the basic filetest operators.

but as you suggest below chances are that it works just fine since it's a perl feature and it exists since 5.6.0 (enough time to discover problems, if it was used at all).


2. ACL support in APR/httpd

Are you talking about internal C calls? I don't think it should affect these.


I was asking if some of the apr file operations were using access()
internally, so we could have leaveraged off of that instead of using
Perl. But a quick grep exposed that apr seems to be using access(), but
only in threadproc/unix/proc.c, not using it for the implementation of
the apr_file_* stuff. So this issue is void (unless it's worth having
access() support in APR)

and it probabaly should. but that's a different story.


3. When was the filetest.pm module introduced in the Perl core ?

5.6.0. I don't know whether Leon will want to backport it to 5.005_04.


Well, is that an issue preventing us from using it?

Not at all. We require 5.6.1+. I thought you were asking about mp1, where 5.005_03 is relevant.


4. performance. from the filetest manpage:

      There may be a slight performance decrease in the filetests when "use
      filetest" is in effect, because in some systems the extended function-
      ality needs to be emulated.

is there a generic way to check whether the fs is acl-enabled?


No easy way I can find...

In which case, we should either enable it by default and have a config flag that will turn this feature off. Or better off leave the registry as is and write a subclass of Registry which will use the access(), so not to add a penalty to those users who have no .acls.


But, I'd be for using this if it doesn't causes false negatives for
anybody. (A bit of a problem to write a portable test for it though)

if you get false negatives that's probably a bug in POSIX::access, no?


Yes, but who knows the status of access() on all platforms ?

I say it's a perl's problem ;)


IMHO, if it's there, we should think about using it. After all, I am
pretty sure Perl already does a pretty good job at making sure it will
work correctly on all platforms it runs on.

right, assuming that this feature was/is used at all.


__________________________________________________________________
Stas Bekman            JAm_pH ------> Just Another mod_perl Hacker
http://stason.org/     mod_perl Guide ---> http://perl.apache.org
mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org   http://ticketmaster.com

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to