Mail::Transport::Mailx - transmit messages using external mailx program
Mail::Transport::Mailx is a Mail::Transport::Send is a Mail::Transport is a Mail::Reporter
my $sender = Mail::Transport::Mailx->new(...); $sender->send($message);
Implements mail transport using the external programs 'mailx', Mail, or 'mail'. When instantiated, the mailer will look for any of these binaries in specific system directories, and the first program found is taken.
'mailx'
Mail
'mail'
WARNING: There are many security issues with mail and mailx. DO NOT USE these commands to send messages which contains data derived from any external source!!!
Under Linux, freebsd, and bsdos the mail, Mail, and mailx names are just links to the same binary. The implementation is very primitive, pre-MIME standard, what may cause many headers to be lost. For these platforms (and probably for other platforms as well), you can better not use this transport mechanism.
mail
mailx
Extends "DESCRIPTION" in Mail::Transport::Send.
Extends "METHODS" in Mail::Transport::Send.
Extends "Constructors" in Mail::Transport::Send.
-Option --Defined in --Default executable Mail::Transport undef hostname Mail::Transport 'localhost' interval Mail::Transport 30 log Mail::Reporter 'WARNINGS' password Mail::Transport undef port Mail::Transport undef proxy Mail::Transport undef retry Mail::Transport <false> style <autodetect> timeout Mail::Transport 120 trace Mail::Reporter 'WARNINGS' username Mail::Transport undef via Mail::Transport 'mailx'
There are two version of the mail program. The newest accepts RFC822 messages, and automagically collect information about where the message is to be send to. The BSD style mail command predates MIME, and expects lines which start with a '~' (tilde) to specify destinations and such. This field is autodetect, however on some platforms both versions of mail can live (like various Linux distributions).
'~'
Extends "Sending mail" in Mail::Transport::Send.
Inherited, see "Sending mail" in Mail::Transport::Send
Extends "Server connection" in Mail::Transport::Send.
Inherited, see "Server connection" in Mail::Transport
Extends "Error handling" in Mail::Transport::Send.
Inherited, see "Error handling" in Mail::Reporter
Extends "Cleanup" in Mail::Transport::Send.
Inherited, see "Cleanup" in Mail::Reporter
It was not possible to figure-out where the message is intended to go to.
Fatal error: the specific package (or one of its superclasses) does not implement this method where it should. This message means that some other related classes do implement this method however the class at hand does not. Probably you should investigate this and probably inform the author of the package.
The message which is sent is the result of a bounce (for instance created with Mail::Message::bounce()), and therefore starts with a Received header field. With the bounce, the new destination(s) of the message are given, which should be included as Resent-To, Resent-Cc, and Resent-Bcc.
Received
bounce
Resent-To
Resent-Cc
Resent-Bcc
The To, Cc, and Bcc header information is only used if no Received was found. That seems to be the best explanation of the RFC.
To
Cc
Bcc
As alternative, you may also specify the to option to some of the senders (for instance Mail::Transport::SMTP::send(to) to overrule any information found in the message itself about the destination.
to
Mailx (in some shape: there are many different implementations) did start accepting messages, but did not succeed sending it.
This module is part of Mail-Box distribution version 2.120, built on September 21, 2016. Website: http://perl.overmeer.net/mailbox/
Copyrights 2001-2016 by [Mark Overmeer]. For other contributors see ChangeLog.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See http://www.perl.com/perl/misc/Artistic.html
To install Mail::Box, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Mail::Box
CPAN shell
perl -MCPAN -e shell install Mail::Box
For more information on module installation, please visit the detailed CPAN module installation guide.