/usr/share/perl5/IO/All/MLDBM.pm is in libio-all-perl 0.86-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | use strict; use warnings;
package IO::All::MLDBM;
use IO::All::DBM -base;
field _serializer => 'Data::Dumper';
sub mldbm {
my $self = shift;
bless $self, __PACKAGE__;
my ($serializer) = grep { /^(Storable|Data::Dumper|FreezeThaw)$/ } @_;
$self->_serializer($serializer) if defined $serializer;
my @dbm_list = grep { not /^(Storable|Data::Dumper|FreezeThaw)$/ } @_;
$self->_dbm_list([@dbm_list]);
return $self;
}
sub tie_dbm {
my $self = shift;
my $filename = $self->name;
my $dbm_class = $self->_dbm_class;
my $serializer = $self->_serializer;
eval "use MLDBM qw($dbm_class $serializer)";
$self->throw("Can't open '$filename' as MLDBM:\n$@") if $@;
my $hash;
my $db = tie %$hash, 'MLDBM', $filename, $self->mode, $self->perms,
@{$self->_dbm_extra}
or $self->throw("Can't open '$filename' as MLDBM file:\n$!");
$self->add_utf8_dbm_filter($db)
if $self->_has_utf8;
$self->tied_file($hash);
}
1;
|