On 27/01/2019 2:21 a.m., Gilles Chehade wrote:
On Sat, Jan 26, 2019 at 08:53:06PM -0700, Steve Williams wrote:
Hi,

I upgraded from OpenBSD 6.3 to OpenBSD 6.4 today.?? I upgraded all packages,
switched to php7, etc.

I've been running OpenBSD since 2.7 so this is a very known process.

The upgrade went quite smoothly and is working fine except for my email.?? I
have massaged the smtpd.conf file to comply with the OpenBSD 6.4 grammar.

I run a VERY simple smtpd configuration saving in mbox format.

I am also using procmail to direct emails into various folders, launched
with a .forward.?? This has been working since about 2005 :), historically
with sendmail and more recently, smtpd.

Unfortunately, email is being written to both my INBOX and the procmail the
folders **incorrectly** post upgrade.

They are all missing the "From " line that is supposed to indicate the start
of a new email message.

It seems like the email is being passed "raw" to procmail without being
processed by "mail.local" ... or that's my interpretation.

you need to tweak your procmail's command so it adds the From delimiter,
there's an option for that.

smtpd used to add the From delimiter for mda, which allowed procmail not
to require that option, however this wasn't correct and when we made the
mda improvements between 6.3 and 6.4, it became impossible to accomodate
procmail without introducing special cases and ugly hacks such as having
explicit search for the string 'procmail' in .forward files.

it wasn't worth it when people can just pass procmail an option.

also don't use procmail, it's trash and there are far better options for
you to use today, fdm being the first to come to mind :-)


Hi Gilles,

Thanks very much for the reply.  I had looked in for some kind of flag that could be set in the procmail config file... I never thought it would be a command line argument to procmail :(  I cannot believe I missed that.

I had even downloaded the smtpd source and saw that mail.local could only write to a file (not a stream)... and that's the only place in the source code where a "From " was written so I knew it wasn't going to be a smtpd configuration change.

Do you think a hint about the behaviour change might be worth a mention in the smptd.conf (5) man page?  I've been trying to come up with some non-procmail specific wording...I am not happy with the following wording, but something along these lines to give a clue that piping to a program won't have the same effect as writing to a physical file.

             mbox    Deliver the message to the user's mbox with
                     mail.local(8).  mbox format is only honoured if final delivery is a file and not a program.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Thanks for the heads up about fdm.  I'll have a look at it.

Also, thanks for such an amazingly simple email program to configure.  I have spent so many hours over the years researching (scratching my head) how to configure sendmail!  A 4 line config file to have a functioning email configuration is pretty staggering!

Cheers,
Steve W.

Reply via email to