/usr/share/perl5/Mail/SRS/Reversible.pm is in libmail-srs-perl 0.31-5.
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 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 | package Mail::SRS::Reversible;
use strict;
use warnings;
use vars qw(@ISA);
use Carp;
use Mail::SRS qw(:all);
use Mail::SRS::Shortcut;
@ISA = qw(Mail::SRS::Shortcut);
=head1 NAME
Mail::SRS::Reversible - A fully reversible Sender Rewriting Scheme
=head1 SYNOPSIS
use Mail::SRS::Reversible;
my $srs = new Mail::SRS::Reversible(...);
=head1 DESCRIPTION
See Mail::SRS for details of the standard SRS subclass interface.
This module provides the methods compile() and parse(). It operates
without store.
=head1 SEE ALSO
L<Mail::SRS>
=cut
sub compile {
my ($self, $sendhost, $senduser) = @_;
my $timestamp = $self->timestamp_create();
# This has to be done in compile, because we might need access
# to it for storing in a database.
my $hash = $self->hash_create($timestamp, $sendhost, $senduser);
# Note that there are 4 fields here and that sendhost may
# not contain a + sign. Therefore, we do not need to escape
# + signs anywhere in order to reverse this transformation.
return $SRS0TAG . $self->separator .
join($SRSSEP, $hash, $timestamp, $sendhost, $senduser);
}
1;
|