He wants to check a 'handler' return value.

> shouldn't stacked handlers be the right solution here?  are stacked auth
> handlers not allowed or something?
> 
> aaron
> 
> On Wed, 2002-02-13 at 09:02, darren chamberlain wrote:
> > Quoting Marcel Weber <[EMAIL PROTECTED]> [12 Feb-02 16:15]:
> > > I don't get the point why it did not work the other way round,
> > > but now everything is just fine now :
> > 
> > Make it a little more generic:
> > 
> > package Apache::MultiAuthen;
> > 
> > use strict;
> > use Apache::Constants qw(:common);
> > 
> > sub handler {
> >     my $r = shift;
> >     my($res, $sent_pw) = $r->get_basic_auth_pw;
> >     return $res if $res != OK;
> > 
> >     # Tweak this; unsure about dir_config returning an array
> >     my @auth_modules = $r->dir_config("AuthModules");
> > 
> >     for my $am (@auth_modules) {
> >         load($am);
> > 
> >         if ($@) {
> >             $r->log("Error loading module '$am': $@");
> >             next;
> >         }
> > 
> >         my $handler = \&{"$am\::handler"};
> >         if ($handler->($r) == OK) {
> >             $r->log_reason("$am return OK");
> >             return OK
> >         }
> > 
> >         $r->log_reason("$am not OK");
> >     }
> > 
> >     $r->note_basic_auth_failure;
> >     return AUTH_REQUIRED;
> > }
> > 
> > sub load {
> >     my $module = @_;
> >     $module  =~ s[::][/]g;
> >     $module .= '.pm';
> > 
> >     eval { require $module; };
> >     
> >     return $@ ? 1 : 0;
> > }
> > 
> > 1;
> > 
> > __END__
> > 
> > (darren)
> > 
> > -- 
> > Never attribute to malice that which is adequately explained by
> > incompetence.
> >     -- Napolean Bonaparte
> -- 
> aaron ross . alias intelligence, inc
>      email . [EMAIL PROTECTED]
>      phone . 215 545 6428
> 


Reply via email to