/usr/share/perl5/Debbugs/Email.pm is in libdebbugs-perl 2.6.0.
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 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 | package Debbugs::Email;
use strict;
BEGIN {
use Exporter ();
use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);
# set the version for version checking
$VERSION = 1.00;
@ISA = qw(Exporter);
@EXPORT = qw( %GTags );
%EXPORT_TAGS = ( ); # eg: TAG => [ qw!name1 name2! ],
# your exported package globals go here,
# as well as any optionally exported functions
@EXPORT_OK = qw( %GTags );
}
use vars @EXPORT_OK;
use Debbugs::Config qw(%Globals);
# initialize package globals, first exported ones
%GTags= ( );
#############################################################################
# Initialize Global Tags
#############################################################################
sub InitEmailTags
{ my @config = @_;
print "V: Initializing Email Tags\n" if $Globals{ 'verbose' };
for( my $i=0; $i<=$#config; $i++)
{ $_ = $config[$i];
chop $_;
next unless length $_;
next if /^#/;
if ( /^GTAG\s*[:=]\s*(\S)+\s*[:=]\s*([^#]*)/i )
{ $GTags{ $1 } = $2;
print "D2: (email) GTag $1=$GTags{$1}\n" if $Globals{ 'debug' } > 1;
}
}
}
#############################################################################
# Load File with Tags
#############################################################################
sub LoadEmail
{ my $emailfile = $_[0];
my @email;
open( LETTER, $emailfile ) or &::fail( "Unable to open $emailfile: $!" );
@email = <LETTER>;
close LETTER;
&ProcessTags( \@email, \%GTags, "GTAG" );
return @email;
}
#############################################################################
# Process Tags
#############################################################################
sub ProcessTags
{ my ($email, $tagsin, $marker) = @_;
my %tags=%$tagsin;
my $tag;
print "V: Processing Template Mail\n" if $Globals{ 'verbose' };
foreach my $line ( @$email )
{ while( $line =~ /\%$marker\_(\S*)\%/s )
{ if( defined( $tags{ $1 } ) ) { $tag = $tags{ $1 }; }
else { $tag = "(missed tag $1)"; }
$line =~ s/\%$marker\_(\S*)\%/$tag/;
}
}
1;
}
END { } # module clean-up code here (global destructor)
1;
|