That is odd, I would check the interface for the authentication modules and be sure that they are being used properly. It may help to also put in some debug/trace statements to figure out where things are failing or not working as expected : )
> This way, I do not get any failure messages, but the > authenication does not > work at all. Say, it does not matter wat password your typing in, you get > always authenticated. Even when one auf the handlers logs a violation and > return AUTH_REQUIRED / DECLINED. > > package Apache::AuthenIntra; > > use strict; > use Apache::AuthenSmb; > use Apache::AuthSybase; > use Apache::Constants; > > sub handler { > my $r = shift; > my($res, $sent_pw) = $r->get_basic_auth_pw; > return $res if $res != OK; > > if ( Apache::AuthenSmb::handler($r) == Apache::Constants::OK ) { > return Apache::Constants::OK; > } elsif ( Apache::AuthSybase::handler($r) == > Apache::Constants::OK ) > { > return Apache::Constants::OK; > } > $r->note_basic_auth_failure; > return Apache::Constant::AUTH_REQUIRED; > } > > Marcel > > > -----Ursprüngliche Nachricht----- > Von: Stathy G. Touloumis [mailto:[EMAIL PROTECTED]] > Gesendet: Dienstag, 12. Februar 2002 18:32 > An: Marcel Weber; [EMAIL PROTECTED] > Betreff: RE: Multiple authentication methods > > > > The get_handlers code is out of AuthenSmb as I do not have the slightest > > idea of how to get the results of the called function. > Hmmm, It would seem that it would be better to call the function directly > from your handler. I am not sure how the AuthenSmb handlers should be > called but you should get the idea. > > sub handler { > my $r = shift; > my($res, $sent_pw) = $r->get_basic_auth_pw; > return $res if $res != OK; > > if ( Apache::AuthSybase->handler($r) == Apache::Constants::OK ) { > return Apache::Constants::OK; > > } elsif ( Apache::AuthenSmb->handler($r) == Apache::Constants::OK ) { > return Apache::Constants::OK; > > } else { > return Apache::Constant::DECLINED; > > } > > > } > > > I get just as far, as I can authenticate via AuthSybase, but the second > > method is never executed. Well, probably some expirienced perl > coder would > > laugh at me... > > He he, we all had to start from the beginning ; ) > > > > Hmm, I fiddled a bit around whith this code but, it does not > > really work the > > way I want it to. > > > > This is what I coded: > > > > sub handler { > > my $r = shift; > > my($res, $sent_pw) = $r->get_basic_auth_pw; > > return $res if $res != OK; > > > > $r->push_handlers( PerlAuthenHandler=> Apache::AuthSybase ); > > if (@{ $r->get_handlers("PerlAuthenHandler") || []}) { > > return OK; > > } > > $r->push_handlers( PerlAuthenHandler=> Apache::AuthenSmb ); > > if (@{ $r->get_handlers("PerlAuthenHandler") || []}) { > > return OK; > > } > > return DECLINED; > > } > > > > The get_handlers code is out of AuthenSmb as I do not have the slightest > > idea of how to get the results of the called function. > > > > What the code should do is: Call AuthSybase, check return value, if OK > > return OK, else call AuthenSMB, return return value. > > > >