404

[ Avaa Bypassed ]




Upload:

Command:

elspacio@3.146.37.255: ~ $
package SDBM_File;

use strict;
use warnings;

require Tie::Hash;
require XSLoader;

our @ISA = qw(Tie::Hash);
our $VERSION = "1.14";

our @EXPORT_OK = qw(PAGFEXT DIRFEXT PAIRMAX);
use Exporter "import";

XSLoader::load();

1;

__END__

=head1 NAME

SDBM_File - Tied access to sdbm files

=head1 SYNOPSIS

 use Fcntl;   # For O_RDWR, O_CREAT, etc.
 use SDBM_File;

 tie(%h, 'SDBM_File', 'filename', O_RDWR|O_CREAT, 0666)
   or die "Couldn't tie SDBM file 'filename': $!; aborting";

 # Now read and change the hash
 $h{newkey} = newvalue;
 print $h{oldkey}; 
 ...

 untie %h;

=head1 DESCRIPTION

C<SDBM_File> establishes a connection between a Perl hash variable and
a file in SDBM_File format.  You can manipulate the data in the file
just as if it were in a Perl hash, but when your program exits, the
data will remain in the file, to be used the next time your program
runs.

=head2 Tie

Use C<SDBM_File> with the Perl built-in C<tie> function to establish
the connection between the variable and the file.

    tie %hash, 'SDBM_File', $basename, $modeflags, $perms;

    tie %hash, 'SDBM_File', $dirfile,  $modeflags, $perms, $pagfilename;

C<$basename> is the base filename for the database.  The database is two
files with ".dir" and ".pag" extensions appended to C<$basename>,

    $basename.dir     (or .sdbm_dir on VMS, per DIRFEXT constant)
    $basename.pag

The two filenames can also be given separately in full as C<$dirfile>
and C<$pagfilename>.  This suits for two files without ".dir" and ".pag"
extensions, perhaps for example two files from L<File::Temp>.

C<$modeflags> can be the following constants from the C<Fcntl> module (in
the style of the L<open(2)> system call),

    O_RDONLY          read-only access
    O_WRONLY          write-only access
    O_RDWR            read and write access

If you want to create the file if it does not already exist then bitwise-OR
(C<|>) C<O_CREAT> too.  If you omit C<O_CREAT> and the database does not
already exist then the C<tie> call will fail.

    O_CREAT           create database if doesn't already exist

C<$perms> is the file permissions bits to use if new database files are
created.  This parameter is mandatory even when not creating a new database.
The permissions will be reduced by the user's umask so the usual value here
would be 0666, or if some very private data then 0600.  (See
L<perlfunc/umask>.)

=head1 EXPORTS

SDBM_File optionally exports the following constants:

=over

=item *

C<PAGFEXT> - the extension used for the page file, usually C<.pag>.

=item *

C<DIRFEXT> - the extension used for the directory file, C<.dir>
everywhere but VMS, where it is C<.sdbm_dir>.

=item *

C<PAIRMAX> - the maximum size of a stored hash entry, including the
length of both the key and value.

=back

These constants can also be used with fully qualified names,
eg. C<SDBM_File::PAGFEXT>.

=head1 DIAGNOSTICS

On failure, the C<tie> call returns an undefined value and probably
sets C<$!> to contain the reason the file could not be tied.

=head2 C<sdbm store returned -1, errno 22, key "..." at ...>

This warning is emitted when you try to store a key or a value that
is too long.  It means that the change was not recorded in the
database.  See BUGS AND WARNINGS below.

=head1 BUGS AND WARNINGS

There are a number of limits on the size of the data that you can
store in the SDBM file.  The most important is that the length of a
key, plus the length of its associated value, may not exceed 1008
bytes.

See L<perlfunc/tie>, L<perldbmfilter>, L<Fcntl>

=cut

Filemanager

Name Type Size Permission Actions
B Folder 0755
CORE Folder 0755
Devel Folder 0755
File Folder 0755
Hash Folder 0755
I18N Folder 0755
IO Folder 0755
IPC Folder 0755
PerlIO Folder 0755
Sys Folder 0755
Tie Folder 0755
Time Folder 0755
asm Folder 0755
asm-generic Folder 0755
auto Folder 0755
bits Folder 0755
gnu Folder 0755
linux Folder 0755
machine Folder 0755
sys Folder 0755
vendor_perl Folder 0755
B.pm File 30.72 KB 0644
Config.pm File 3.12 KB 0644
Config.pod File 250.68 KB 0644
Config_git.pl File 409 B 0644
Config_heavy.pl File 55.26 KB 0644
DynaLoader.pm File 24.63 KB 0644
Errno.pm File 6.7 KB 0644
Fcntl.pm File 3.95 KB 0644
GDBM_File.pm File 1.51 KB 0644
IO.pm File 1.42 KB 0644
NDBM_File.pm File 2.44 KB 0644
O.pm File 4.11 KB 0644
ODBM_File.pm File 2.33 KB 0644
Opcode.pm File 15.52 KB 0644
POSIX.pm File 19.72 KB 0644
POSIX.pod File 71.98 KB 0644
SDBM_File.pm File 3.46 KB 0644
_h2ph_pre.ph File 28.57 KB 0644
arybase.pm File 2.75 KB 0644
attributes.pm File 16.53 KB 0644
endian.ph File 4.36 KB 0644
features.ph File 13.37 KB 0644
lib.pm File 5.87 KB 0644
mro.pm File 9.86 KB 0644
ops.pm File 997 B 0644
perllocal.pod File 6.66 KB 0644
re.pm File 22.16 KB 0644
signal.ph File 3.3 KB 0644
stdarg.ph File 2.8 KB 0644
stdc-predef.ph File 840 B 0644
stddef.ph File 12.08 KB 0644
syscall.ph File 86 B 0644
syslimits.ph File 452 B 0644
syslog.ph File 85 B 0644
wait.ph File 83 B 0644