tympanum has asked for the wisdom of the Perl Monks concerning the following question:

Ok, so far I have been able to get my e-mail from the servers, and send it to another user. Problem is, when i submit it, everyone in the original To: header receives it again. Is there a quick way to replace the original recipients with the new one ?

Replies are listed 'Best First'.
Re: How do I properly forward an e-mail ?
by merlyn (Sage) on Apr 05, 2001 at 17:35 UTC
    Don't use "header-to" to affect delivery. Use "envelope-to". For sendmail, that means don't use the -t switch. I don't know your MUA, so I can't be more specific.
      Thanks for your reply, but I should have mentioned I'm working on 'doze, not a real computer system.
        In which case, and if you want to bounce the mail straight to someone else, then why not have perl open a conention and have a conversation with the smtp server.

        mailbody should contain the data, recieved headers and all.

        use Net::SMTP; # Yes, this is cribbed straight from node 'How # do I send e-mail from my Perl Program?' # You need to fill in the variables. # Read the perldoc for more info on using SMTP. my $smtp = Net::SMTP->new("$mailserver") or die $!; $smtp->mail( $forward_from ); $smtp->to( $forward_to ); $smtp->data(); $smtp->datasend($mailbody); $smtp->dataend(); $smtp->quit();
        Where $mailbody should contain the original header (starting with Received:) and body of the email, seperated by an extra /n.

        References: Answer: How do I send e-mail from my Perl Program? by Adam