FTNMAIL: encode all strings equally
authorSebastian <basti@notizbuch>
Mon, 11 Aug 2014 22:56:25 +0000 (00:56 +0200)
committerSebastian <basti@notizbuch>
Mon, 11 Aug 2014 22:56:25 +0000 (00:56 +0200)
modules/FTNMAIL.pm

index 05eeaa9d0646dd2ec5b7731ddc919f2f664ffdd3..8a606af1a9bec19c8483735d5e39e3e853e4fc28 100644 (file)
@@ -23,10 +23,12 @@ sub pack_mail($$)
        my ($mail, $charset) = @_;
        my $output;
 
-       # encode subject/body correctly
-       my $chrs = charset2chrs($charset) or return(undef);
-       my $subj = encode($charset, $mail->{subj});
-       my $body = encode($charset, $mail->{body});
+       # encode all strings correctly
+       my $chrs  = charset2chrs($charset) or return(undef);
+       my $fname = encode($charset, $mail->{fname});
+       my $tname = encode($charset, $mail->{tname});
+       my $subj  = encode($charset, $mail->{subj});
+       my $body  = encode($charset, $mail->{body});
        $body    =~ s/\n/\x0D/g;
 
        # generate kludge lines
@@ -80,7 +82,7 @@ sub pack_mail($$)
                0,                              # Attribute
                0,                              # Cost
                $datetime,                      # Date/Time String
-               $mail->{tname}, $mail->{fname}, # From/To
+               $tname, $fname,                 # From/To
                $subj, $output                  # Subject/Body
        );
        return($pack);
@@ -150,7 +152,7 @@ sub unpack_body($$$$)
 
        # find FROM and TO addresses
        if(!$mail{area}) {
-       # --> NETMAIL: use INTL/FMPT/TOPT
+       # --> NETMAIL: use INTL/FMPT/TOPT (fallback to packet headers)
                if($intl && $intl=~/^(\d+):(\d+)\/(\d+) (\d+):(\d+)\/(\d+)$/) {
                        if($fmpt) {
                                $mail{from} = "$4:$5/$6.$fmpt";