HTTPD-User-Manage
view release on metacpan - search on metacpan
view release on metacpan or search on metacpan
lib/HTTPD/Authen.pm view on Meta::CPAN
package HTTPD::Authen::Basic;
use strict;
use vars qw(@ISA $Debug);
@ISA = qw(HTTPD::Authen);
*Debug = \$HTTPD::Authen::Debug;
sub new {
require MIME::Base64;
my($class,$ref) = @_;
$ref ||= {};
bless $ref => $class;
}
sub parse {
my($self,$string) = @_;
$string =~ s/^Basic\s+//;
return split(":", MIME::Base64::decode_base64($string), 2);
}
package HTTPD::Authen::Digest;
use strict;
use vars qw(@ISA $Debug);
@ISA = qw(HTTPD::Authen);
*Debug = \$HTTPD::Authen::Debug;
sub new {
my($class,$ref) = @_;
$ref ||= {};
require MD5;
$ref->{MD5} = new MD5;
bless $ref => $class;
}
sub parse {
my($self,$string) = @_;
$string =~ s/^Digest\s+//;
$string =~ s/"//g; #"
my(@pairs) = split(/,?\s+/, $string);
my(%pairs) = map { split(/=/) } @pairs;
print STDERR "Digest::parse -> @pairs{qw(username realm response)}\n" if $Debug;
return \%pairs;
lib/HTTPD/GroupAdmin/SQL.pm view on Meta::CPAN
USER => "", #database login name
AUTH => "", #database login password
DRIVER => "mSQL", #driver for DBI
GROUPTABLE => "", #table with field names below
NAMEFIELD => "user", #field for the name
GROUPFIELD => "group", #field for the group
);
sub new {
my($class) = shift;
my $self = bless { %Default, @_ } => $class;
$self->_check(qw(DRIVER DB GROUPTABLE));
$self->db($self->{DB});
return $self;
}
sub DESTROY {
my($self) = @_;
$self->{'_DBH'}->disconnect;
}
lib/HTTPD/GroupAdmin/Text.pm view on Meta::CPAN
# Apache 1.3.4 this limitation on lines in the group file.
$LineMax = 8 * 1024;
my %Default = (PATH => ".",
DB => ".htgroup",
FLAGS => "rwc",
);
sub new {
my($class) = shift;
my $self = bless { %Default, @_ } => $class;
#load the DBM methods
$self->load("HTTPD::GroupAdmin::DBM");
$self->db($self->{DB});
return $self;
}
sub _tie {
my($self) = @_;
my($fh,$db) = ($self->gensym(), $self->{DB});
my($key,$val);
lib/HTTPD/UserAdmin/DBM.pm view on Meta::CPAN
my %Default = (PATH => ".",
DB => ".htpasswd",
DBMF => "NDBM",
FLAGS => "rwc",
MODE => 0644,
);
sub new {
my($class) = shift;
my $self = bless { %Default, @_ } => $class;
$self->_dbm_init;
$self->db($self->{DB});
return $self;
}
sub DESTROY {
local($^W)=0;
$_[0]->_untie('_HASH');
$_[0]->unlock;
}
lib/HTTPD/UserAdmin/DBM/netscape.pm view on Meta::CPAN
my %Default = (PATH => ".",
DB => ".htpasswd",
DBMF => "DBNull",
FLAGS => "rwc",
MODE => 0644,
);
sub new {
my($class) = shift;
my $self = bless { %Default, @_ } => $class;
$self->{DBMF} = 'DBNull'; # force null-terminated NDBM_File
$self->_dbm_init;
$self->db($self->{DB});
return $self;
}
sub add {
# deliberately get rid of additional info
# since we don't understand Netscape format.
my($self,$user,$passwd) = @_;
lib/HTTPD/UserAdmin/SQL.pm view on Meta::CPAN
USER => "", #database login name
AUTH => "", #database login password
DRIVER => "mSQL", #driver for DBI
USERTABLE => "", #table with field names below
NAMEFIELD => "user", #field for the name
PASSWORDFIELD => "password", #field for the password
);
sub new {
my($class) = shift;
my $self = bless { %Default, @_ } => $class;
$self->_check(qw(DRIVER DB USERTABLE));
$self->db($self->{DB});
return $self;
}
sub DESTROY {
my($self) = @_;
$self->{'_DBH'}->disconnect;
}
view all matches for this distributionview release on metacpan - search on metacpan
( run in 0.533 second using v1.00-cache-2.02-grep-82fe00e-cpan-a086c87fca4 )