in reply to Subclassing Apache::AuthDBI

Yay to MidLifeXis for pointing out the problem.

When MyAuthDBI::authen is called then PERL looks to that specific object for the function rather than traversing up the parent tree. MyAuthDBI->authen would call the function but the original Apache::AuthDBI::authen expects $r as the first argument and not $self and so a new set of problems arises.

So the easy solution to this problem is:
package MyAuthDBI; use base "Apache::AuthDBI"; sub authen { my ($r) = @_; Apache::AuthDBI::authen($r); } 1;
Big props out to MidLifeXis for noticing this, thanks!