Skip Menu |

This queue is for tickets about the MailTools CPAN distribution.

Report information
The Basics
Id: 129627
Status: resolved
Priority: 0/
Queue: MailTools

People
Owner: Nobody in particular
Requestors: jik [...] kamens.us
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: (no value)



Subject: Mail::Send fails when using sendmail if there is a period in the message on a line by itself
Date: Mon, 20 May 2019 11:36:15 -0400
To: bug-MailTools [...] rt.cpan.org
From: Jonathan Kamens <jik [...] kamens.us>
Since Mail::Send doesn't pass the -oi flag into sendmail when launching it, if the message being fed into MailTools has a period on a line by itself, sendmail will stop reading the message at that point, and the message that ends up being sent will be incomplete. If there is a lot of message after the line containing only a period, then Perl will get an SIGPIPE trying to write the rest of the message to sendmail -- which, remember, has stopped reading and exited -- and silently crash with EPIPE.   jik
On Mon May 20 12:00:38 2019, jik@kamens.us wrote: Show quoted text
> Since Mail::Send doesn't pass the -oi flag into sendmail when launching > it, if the message being fed into MailTools has a period on a line by > itself, sendmail will stop reading the message at that point, and the > message that ends up being sent will be incomplete.
I have clearified the documentation. Do not use MailTools but Mail::Box, which will do the real work automatically.
Subject: Re: [rt.cpan.org #129627] Mail::Send fails when using sendmail if there is a period in the message on a line by itself
Date: Mon, 20 May 2019 12:21:52 -0400
To: bug-MailTools [...] rt.cpan.org
From: Jonathan Kamens <jik [...] kamens.us>
The script where I had this problem was a legacy script which has been unmodified in many years. When I wrote it MailTools wasn't deprecated. I imagine there are other scripts out there in the same boat. I don't see how Mail::Box is relevant here, since I'm talking about sending messages, not accessing mailboxes, and I don't think Mail::Box sends messages. If your answer to all bug reports is going to be, "Don't use this package," then maybe hand over maintenance of the package to someone who is willing to fix bugs and put out new releases? Yes, that's the sound of me volunteering.   jik On 5/20/19 12:18 PM, Mark Overmeer via RT wrote: Show quoted text
> <URL: https://rt.cpan.org/Ticket/Display.html?id=129627 > > > On Mon May 20 12:00:38 2019, jik@kamens.us wrote:
>> Since Mail::Send doesn't pass the -oi flag into sendmail when launching >> it, if the message being fed into MailTools has a period on a line by >> itself, sendmail will stop reading the message at that point, and the >> message that ends up being sent will be incomplete.
> I have clearified the documentation. Do not use MailTools but Mail::Box, > which will do the real work automatically. > > > > >
On Mon May 20 12:22:05 2019, jik@kamens.us wrote: Show quoted text
> The script where I had this problem was a legacy script which has been > unmodified in many years. When I wrote it MailTools wasn't deprecated. I > imagine there are other scripts out there in the same boat.
The module was not deprecated, but also not used correctly by your code: a sleeping bug. Probably due to poor documentation in Mail::Send (so next release will get a clear warning) Show quoted text
> I don't see how Mail::Box is relevant here, since I'm talking about > sending messages, not accessing mailboxes, and I don't think Mail::Box > sends messages.
Mail::Transfer is part of the MailBox suite, and can be used to send correct emails in a few lines of code. It automatically handles utf8 correctly, and much more. Another alternative are the Email::* modules. Show quoted text
> If your answer to all bug reports is going to be, "Don't use this > package," then maybe hand over maintenance of the package to someone who > is willing to fix bugs and put out new releases? Yes, that's the sound > of me volunteering.
The MailTools modules are in maintained, because it is used in many applications. Many books contain examples using those modules as well. However, it's abstraction is poor, as you have experienced yourself. Implementing better abstraction (for instance escaping dots) in MailTools would be nice, however... there is sooooo much wrong. The first versions predate MIME! I have very bad experiences with "harmless" changes people suggest to these old modules: much of the code where it is used in is very poor as well: even the smallest functional change hurts someone. So: it is DEPRECATED but also MAINTAINED to run on all versions of Perl.
Subject: Re: [rt.cpan.org #129627] Mail::Send fails when using sendmail if there is a period in the message on a line by itself
Date: Mon, 20 May 2019 14:25:43 -0400
To: bug-MailTools [...] rt.cpan.org
From: Jonathan Kamens <jik [...] kamens.us>
Do you mean Mail::Transport? On 5/20/19 2:22 PM, Mark Overmeer via RT wrote: Show quoted text
> <URL: https://rt.cpan.org/Ticket/Display.html?id=129627 > > > On Mon May 20 12:22:05 2019, jik@kamens.us wrote:
>> The script where I had this problem was a legacy script which has been >> unmodified in many years. When I wrote it MailTools wasn't deprecated. I >> imagine there are other scripts out there in the same boat.
> The module was not deprecated, but also not used correctly by your code: a > sleeping bug. Probably due to poor documentation in Mail::Send (so next > release will get a clear warning) >
>> I don't see how Mail::Box is relevant here, since I'm talking about >> sending messages, not accessing mailboxes, and I don't think Mail::Box >> sends messages.
> Mail::Transfer is part of the MailBox suite, and can be used to send correct > emails in a few lines of code. It automatically handles utf8 correctly, and > much more. Another alternative are the Email::* modules. >
>> If your answer to all bug reports is going to be, "Don't use this >> package," then maybe hand over maintenance of the package to someone who >> is willing to fix bugs and put out new releases? Yes, that's the sound >> of me volunteering.
> The MailTools modules are in maintained, because it is used in many > applications. Many books contain examples using those modules as well. > However, it's abstraction is poor, as you have experienced yourself. > Implementing better abstraction (for instance escaping dots) in MailTools > would be nice, however... there is sooooo much wrong. The first versions > predate MIME! > > I have very bad experiences with "harmless" changes people suggest to these > old modules: much of the code where it is used in is very poor as well: even the > smallest functional change hurts someone. > > So: it is DEPRECATED but also MAINTAINED to run on all versions of Perl. >
CC: ;
Subject: Re: [rt.cpan.org #129627] Mail::Send fails when using sendmail if there is a period in the message on a line by itself
Date: Mon, 20 May 2019 20:59:57 +0200
To: Jonathan Kamens via RT <bug-MailTools [...] rt.cpan.org>
From: Mark Overmeer <mark [...] nluug.nl>
* Jonathan Kamens via RT (bug-MailTools@rt.cpan.org) [190520 18:26]: Show quoted text
> Queue: MailTools > Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=129627 > > > Do you mean Mail::Transport?
Yes... namespace confusion... sorry -- Regards, MarkOv ------------------------------------------------------------------------ Mark Overmeer MSc MARKOV Solutions Mark@Overmeer.net solutions@overmeer.net http://Mark.Overmeer.net http://solutions.overmeer.net
Documentation improvement was included in release 2.21