SMTP URLs [was Re: Putmail ignores multiple SMTP recipients]

"Sergey Poznyakoff" <[email protected]> Sun, 12 Oct 2025 18:28:37 +0200
Newsgroups gmane.comp.gnu.mailutils.bugs
Organization GNU.org.ua
Message-ID <[email protected]>
Hi Kevin,

> > Thank you, now the email is sent to both recipients listed after ";to="
> > in the previous example. However ";recipient-headers=" ignores addresses
> > listed after the first non-empty "recipient-header":
> 
> Yes, that's the way it is implemented now.  Perhaps docs are not clear
> enough about it.

After a thorough examination of the code, I came to the conclusion that
current implementation unnecessarily complicates the use of SMTP URLs in
practice.  I therefore reimplemented it in a more clear (hopefully) way
and pushed commit 22de170be1 [1].  Here's a short description of how it
works now:

  1. If recipients are not supplied explicitely, the list of recipients
     is built by examining the following headers (in this order): To,
     Cc, Bcc.
  2. The list of headers to consult for emails can be changed by
     supplying the 'recipient-headers=' parameter (whose value is a
     comma-delimited list of header names, as previously).
  3. If the 'to=' parameter is given, its value supllies the list of
     reciplient emails (delimited by commas) and no message scanning is
     done.
  4. However, if, in addition to 'to=', the 'read-recipients' parameter
     is also supplied, then the recipient list is built as a
     concatenation of the list of explicitly supplied recipients (as in
     p.3) and recipients obtained from the message (as in pp.1-2).

Hope that helps.

Regards,
Sergey

[1] https://git.gnu.org.ua/mailutils.git/commit/?id=22de170be18f00bacdb66ed49ad185a99078ddcd