Initial Windows agent repository
This commit is contained in:
commit
a0db0c2e5b
10589 changed files with 3844063 additions and 0 deletions
229
OGP64/usr/share/perl5/vendor_perl/5.40/MIME/Base32.pm
Normal file
229
OGP64/usr/share/perl5/vendor_perl/5.40/MIME/Base32.pm
Normal file
|
|
@ -0,0 +1,229 @@
|
|||
package MIME::Base32;
|
||||
|
||||
use 5.008001;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
require Exporter;
|
||||
our @ISA = qw(Exporter);
|
||||
our @EXPORT = qw(encode_base32 decode_base32);
|
||||
our @EXPORT_OK = qw(
|
||||
encode_rfc3548 decode_rfc3548 encode_09AV decode_09AV
|
||||
encode_base32hex decode_base32hex
|
||||
);
|
||||
|
||||
our $VERSION = "1.303";
|
||||
$VERSION = eval $VERSION;
|
||||
|
||||
sub encode { return encode_base32(@_) }
|
||||
sub encode_rfc3548 { return encode_base32(@_) }
|
||||
|
||||
sub encode_base32 {
|
||||
my $arg = shift;
|
||||
return '' unless defined($arg); # mimic MIME::Base64
|
||||
|
||||
$arg = unpack('B*', $arg);
|
||||
$arg =~ s/(.....)/000$1/g;
|
||||
my $l = length($arg);
|
||||
if ($l & 7) {
|
||||
my $e = substr($arg, $l & ~7);
|
||||
$arg = substr($arg, 0, $l & ~7);
|
||||
$arg .= "000$e" . '0' x (5 - length $e);
|
||||
}
|
||||
$arg = pack('B*', $arg);
|
||||
$arg =~ tr|\0-\37|A-Z2-7|;
|
||||
return $arg;
|
||||
}
|
||||
|
||||
sub decode { return decode_base32(@_) }
|
||||
sub decode_rfc3548 { return decode_base32(@_) }
|
||||
|
||||
sub decode_base32 {
|
||||
my $arg = uc(shift || ''); # mimic MIME::Base64
|
||||
|
||||
$arg =~ tr|A-Z2-7|\0-\37|;
|
||||
$arg = unpack('B*', $arg);
|
||||
$arg =~ s/000(.....)/$1/g;
|
||||
my $l = length $arg;
|
||||
$arg = substr($arg, 0, $l & ~7) if $l & 7;
|
||||
$arg = pack('B*', $arg);
|
||||
return $arg;
|
||||
}
|
||||
|
||||
sub encode_09AV { return encode_base32hex(@_) }
|
||||
|
||||
sub encode_base32hex {
|
||||
my $arg = shift;
|
||||
return '' unless defined($arg); # mimic MIME::Base64
|
||||
|
||||
$arg = unpack('B*', $arg);
|
||||
$arg =~ s/(.....)/000$1/g;
|
||||
my $l = length($arg);
|
||||
if ($l & 7) {
|
||||
my $e = substr($arg, $l & ~7);
|
||||
$arg = substr($arg, 0, $l & ~7);
|
||||
$arg .= "000$e" . '0' x (5 - length $e);
|
||||
}
|
||||
$arg = pack('B*', $arg);
|
||||
$arg =~ tr|\0-\37|0-9A-V|;
|
||||
return $arg;
|
||||
}
|
||||
|
||||
sub decode_09AV { return decode_base32hex(@_) }
|
||||
|
||||
sub decode_base32hex {
|
||||
my $arg = uc(shift || ''); # mimic MIME::Base64
|
||||
|
||||
$arg =~ tr|0-9A-V|\0-\37|;
|
||||
$arg = unpack('B*', $arg);
|
||||
$arg =~ s/000(.....)/$1/g;
|
||||
my $l = length($arg);
|
||||
$arg = substr($arg, 0, $l & ~7) if $l & 7;
|
||||
$arg = pack('B*', $arg);
|
||||
return $arg;
|
||||
}
|
||||
|
||||
1;
|
||||
|
||||
=encoding utf8
|
||||
|
||||
=head1 NAME
|
||||
|
||||
MIME::Base32 - Base32 encoder and decoder
|
||||
|
||||
=head1 SYNOPSIS
|
||||
|
||||
#!/usr/bin/env perl
|
||||
use strict;
|
||||
use warnings;
|
||||
use MIME::Base32;
|
||||
|
||||
my $encoded = encode_base32('Aladdin: open sesame');
|
||||
my $decoded = decode_base32($encoded);
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
This module is for encoding/decoding data much the way that L<MIME::Base64> does.
|
||||
|
||||
Prior to version 1.0, L<MIME::Base32> used the C<base32hex> (or C<[0-9A-V]>) encoding and
|
||||
decoding methods by default. If you need to maintain that behavior, please call
|
||||
C<encode_base32hex> or C<decode_base32hex> functions directly.
|
||||
|
||||
Now, in accordance with L<RFC-3548, Section 5|https://tools.ietf.org/html/rfc3548#section-5>,
|
||||
L<MIME::Base32> uses the C<encode_base32> and C<decode_base32> functions by default.
|
||||
|
||||
=head1 FUNCTIONS
|
||||
|
||||
The following primary functions are provided:
|
||||
|
||||
=head2 decode
|
||||
|
||||
Synonym for C<decode_base32>
|
||||
|
||||
=head2 decode_rfc3548
|
||||
|
||||
Synonym for C<decode_base32>
|
||||
|
||||
=head2 decode_base32
|
||||
|
||||
my $string = decode_base32($encoded_data);
|
||||
|
||||
Decode some encoded data back into a string of text or binary data.
|
||||
|
||||
=head2 decode_09AV
|
||||
|
||||
Synonym for C<decode_base32hex>
|
||||
|
||||
=head2 decode_base32hex
|
||||
|
||||
my $string_or_binary_data = MIME::Base32::decode_base32hex($encoded_data);
|
||||
|
||||
Decode some encoded data back into a string of text or binary data.
|
||||
|
||||
=head2 encode
|
||||
|
||||
Synonym for C<encode_base32>
|
||||
|
||||
=head2 encode_rfc3548
|
||||
|
||||
Synonym for C<encode_base32>
|
||||
|
||||
=head2 encode_base32
|
||||
|
||||
my $encoded = encode_base32("some string");
|
||||
|
||||
Encode a string of text or binary data.
|
||||
|
||||
=head2 encode_09AV
|
||||
|
||||
Synonym for C<encode_base32hex>
|
||||
|
||||
=head2 encode_base32hex
|
||||
|
||||
my $encoded = MIME::Base32::encode_base32hex("some string");
|
||||
|
||||
Encode a string of text or binary data. This uses the C<hex> (or C<[0-9A-V]>) method.
|
||||
|
||||
=head1 AUTHORS
|
||||
|
||||
Jens Rehsack - <rehsack@cpan.org> - Current maintainer
|
||||
|
||||
Chase Whitener
|
||||
|
||||
Daniel Peder - sponsored by Infoset s.r.o., Czech Republic
|
||||
- <Daniel.Peder@InfoSet.COM> http://www.infoset.com - Original author
|
||||
|
||||
=head1 BUGS
|
||||
|
||||
Before reporting any new issue, bug or alike, please check
|
||||
L<https://rt.cpan.org/Dist/Display.html?Queue=MIME-Base32>,
|
||||
L<https://github.com/perl5-utils/MIME-Base32/issues> or
|
||||
L<https://github.com/perl5-utils/MIME-Base32/pulls>, respectively, whether
|
||||
the issue is already reported.
|
||||
|
||||
Please report any bugs or feature requests to
|
||||
C<bug-mime-base32 at rt.cpan.org>, or through the web interface at
|
||||
L<https://rt.cpan.org/NoAuth/ReportBug.html?Queue=MIME-Base32>.
|
||||
I will be notified, and then you'll automatically be notified of progress
|
||||
on your bug as I make changes.
|
||||
|
||||
Any and all criticism, bug reports, enhancements, fixes, etc. are appreciated.
|
||||
|
||||
=head1 SUPPORT
|
||||
|
||||
You can find documentation for this module with the perldoc command.
|
||||
|
||||
perldoc MIME::Base32
|
||||
|
||||
You can also look for information at:
|
||||
|
||||
=over 4
|
||||
|
||||
=item * RT: CPAN's request tracker
|
||||
|
||||
L<https://rt.cpan.org/Dist/Display.html?Name=MIME-Base32>
|
||||
|
||||
=item * AnnoCPAN: Annotated CPAN documentation
|
||||
|
||||
L<http://annocpan.org/dist/MIME-Base32>
|
||||
|
||||
=item * MetaCPAN
|
||||
|
||||
L<https://metacpan.org/release/MIME-Base32>
|
||||
|
||||
=back
|
||||
|
||||
=head1 COPYRIGHT AND LICENSE INFORMATION
|
||||
|
||||
Copyright (c) 2003-2010 Daniel Peder. All rights reserved.
|
||||
Copyright (c) 2015-2016 Chase Whitener. All rights reserved.
|
||||
Copyright (c) 2016 Jens Rehsack. All rights reserved.
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the same terms as Perl itself.
|
||||
|
||||
=head1 SEE ALSO
|
||||
|
||||
L<MIME::Base64>, L<RFC-3548|https://tools.ietf.org/html/rfc3548#section-5>
|
||||
|
||||
=cut
|
||||
Loading…
Add table
Add a link
Reference in a new issue