I think the best approach would be to simply parse this file and send the SMTP commands with Net::SMTP. Error handling isn't that hard; just check the return values from each of the commands. An easy way to handle these errors would be to use Perl's exception handling mechanism, eval and die.

It looks like you're on your own figuring out what SMTP host to connect to. You'll have to parse the recipient address, then use DNS to figure out which host you should connect to, and back off to higher-distance MXs if the lower-distance ones fail. You may be able to find a module to do this; if you can't consider sharing this code, since it seems like it would be generally useful.


In reply to Re: Sending emails from BSMTP formatted files by sgifford
in thread Sending emails from BSMTP formatted files by davemabe

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.