CGI-Builder-Auth

 view release on metacpan or  search on metacpan

lib/CGI/Builder/Auth/UserAdmin/DBM/netscape.pm  view on Meta::CPAN


sub STORE {
    my $self = shift;
    return $self->SUPER::STORE("$_[0]\0","$_[1]\0");
}

sub FETCH {
    my $self = shift;
    my $h = $self->SUPER::FETCH("$_[0]\0");
    substr($h,-1,1)='' if $h;  #remove terminating null
    return $h;
}

sub FIRSTKEY {
    my $self = shift;
    my($a) = $self->SUPER::FIRSTKEY(@_);
    return undef unless defined($a);
    substr($a,-1,1)='';
    return $a;
}

sub NEXTKEY {
    my $self = shift;
    my($a) = $self->SUPER::NEXTKEY("$_[0]\0");
    return () unless defined($a);
    substr($a,-1,1)='';
    return $a;
}

sub DELETE {
    my $self = shift;
    $self->SUPER::DELETE("$_[0]\0");
}

sub CLEAR {
    my $self = shift;
    $self->SUPER::CLEAR(@_);
}

sub DESTROY {
    my $self = shift;
    $self->SUPER::DESTROY(@_);
}

package CGI::Builder::Auth::UserAdmin::DBM::netscape;
use Carp ();
use strict;
use vars qw(@ISA $VERSION);
@ISA = qw(CGI::Builder::Auth::UserAdmin::DBM);
$VERSION = (qw$Revision: 1.1.1.1 $)[1];

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) = @_;
    $self->SUPER::add($user,$passwd);
}

sub update {
    my($self, $username, $passwd) = @_;
    $self->SUPER::update($username,$passwd);
}
	    
1;

 view all matches for this distribution
 view release on metacpan -  search on metacpan

( run in 1.323 second using v1.00-cache-2.02-grep-82fe00e-cpan-1925d2aa809 )