On 2026-01-19 14:00, Jan Eden wrote:
> On 2026-01-19 14:10, Reio Remma wrote:
> > > > I see I have this for mlmmj in my config:
> > > >
> > > > action deliver_mlmmj mda "/usr/bin/mlmmj-receive -L
> > > > /var/vmail/mlmmj/%{rcpt.domain}/%{rcpt.user}/" virtual
> > > > <mlmmj_virtuals>userbase <mlmmj_userinfo>
> > > > match from any for domain <domains> rcpt-to <mlmmj_recipients> action
> > > > deliver_mlmmj
> > > >
> > > Hi Reio,
> > >
> > > could you quote (anonymized) lines from the three tables referenced in
> > > your config, so I understand how they work together? I was under the
> > > impression I could just use one table to link the list name to the
> > > %{dest.user} variable. My lists will not use different domains, so I
> > > will probably not need the domain variable.
> >
> > Unfortunately I'm no further help here, because I've a setup with virtual
> > users stored in a database. Maybe you can just skip the virtual/userbase
> > part of the action.
>
> I have now simplified the test configuration like this:
>
> --------------------------------------------------
> table mailing_lists { [email protected] }
> action "mlmmj" mda "/usr/local/bin/mlmmj-receive -L /var/spool/mlmmj/testing/"
> match from any for rcpt-to <mailing_lists> action "mlmmj"
> --------------------------------------------------
>
> Note that the action does not use a variable (for now). But even then, I
> get the well-known error message 550. It is quite frustrating.
Progress! I was able to replicate Reio's configuration like this (257 is
the UID/GID of the _smtpd user account):
--------------------------------------------------
table mailing_lists { [email protected] = testing }
table mlmmj_userinfo { testing = 257:257:/var/spool/mlmmj }
action "mlmmj" mda "/usr/local/bin/mlmmj-receive -L
/var/spool/mlmmj/%{dest.user}/" virtual <mailing_lists> userbase
<mlmmj_userinfo>
match from any for rcpt-to <mailing_lists> action "mlmmj"
--------------------------------------------------
This results in:
- Messages sent from any subscribed address are delivered to the
mailboxes of *local* subscribers.
- Messages sent from non-subscribers create administrative messages for
owners/moderators.
Remaining issues:
- Messages sent from subscribed addresses are not being delivered to
external subscribers.
- Messages sent from non-subscribers result in generic error messages
(Status: 5.3.0).
- Releasing messages from non-subscribers will not deliver them to any
subscriber (local or external).
So the mda action does work in principle, but it still has major flaws
(for me). While the simple mapping/piping method works perfectly, I
still would like to understand why the mda action fails.
Thanks in advance for any pointers!
- Jan