Mail::Mailer - Simple interface to electronic mailing mechanisms use Mail::Mailer; use Mail::Mailer qw(mail); $mailer = new Mail::Mailer; $mailer = new Mail::Mailer $type, @args; $mailer->open(\%headers); print $mailer $body; $mailer->close; Sends mail using any of the built-in methods. You can alter the behaviour of a method by passing `$command' to the `new' method. Use the Unix system `mail' program to deliver the mail. `$command' is the path to `mail'. Mail::Mailer will search for `mailx', `Mail' and `mail' (in this order). Use the `sendmail' program to deliver the mail. `$command' is the path to `sendmail'. Use the `smtp' protocol via Net::SMTP to deliver the mail. The server to use can be specified in `@args' with $mailer = new Mail::Mailer 'smtp', Server => $server; The smtp mailer does not handle `Cc' and `Bcc' lines, neither their `Resent-*' fellows. The `Debug' options enables debugging output from `Net::SMTP'. Use qmail's qmail-inject program to deliver the mail. Used for debugging, this calls `/bin/echo' to display the data. No mail is ever sent. `$command' is ignored. `Mail::Mailer' will search for executables in the above order. The default mailer will be the first one found.

ARGUMENTS
`new' can optionally be given a `$command' and `$type'. `$type' is one `sendmail', `mail', ... given above. The meaning of `$command' depends on `$type'. `open' is given a reference to a hash. The hash consists of key and value pairs, the key being the name of the header field (eg, `To'), and the value being the corresponding contents of the header field. The value can either be a scalar (eg, `gnat@frii.com') or a reference to an array of scalars (`eg, ['gnat@frii.com', 'Tim.Bunce@ig.co.uk']'). Assist formatting of fields in ...::rfc822:send_headers to ensure valid in the face of newlines and longlines etc. Secure all forms of send_headers() against hacker attack and invalid contents. Especially "\n~..." in ...::mail::send_headers. Augments/override the build in choice for binary used to send out our mail messages. Format: "type1:mailbinary1;mailbinary2;...:type2:mailbinaryX;...:..." Example: assume you want you use private sendmail binary instead of mailx, one could set `PERL_MAILERS' to: "mail:/does/not/exists:sendmail:$HOME/test/bin/sendmail" On systems which may include `:' in file names, use `|' as separator between type-groups. "mail:c:/does/not/exists|sendmail:$HOME/test/bin/sendmail" Mail::Send Maintained by Mark Overmeer <mailtools@overmeer.net> Original code written by Tim Bunce <Tim.Bunce@ig.co.uk>, with a kick start from Graham Barr <gbarr@pobox.com>. With contributions by Gerard Hickey <hickey@ctron.com> Small fix and documentation by Nathan Torkington <gnat@frii.com>.