Moin,
just played around with this; There is one thing I can currently not
really find a good solution for.

If I have mail incoming for:

test+delimi...@example.com

and I have an alias of the form:

t...@example.com: t...@example.net

with a virtual user:

t...@example.net _virtmail

The message gets properly delivered; However, it is delivered-to
t...@example.net, not test+delimi...@example.net. Hence, dovecot's
sieve does not recognize it to have a delimiter, and hence delimiter
based sorting fails.

With table_mysql, I solved this by hitting the alias to be:

test+delimi...@example.com: test+delimi...@example.net

with a query properly picking up the delimiter dynamically through a
bit of string handling foo in mysql.

Now generally, opensmtpd _does_ support delimiters, so that would not
be necessary if I would not want to preserve delimiters through
aliasing.

Technically, this should also work with grouping in regex; However,
table_regex seems to be matching only, i.e., not allowing group-matches
to be then used in the value part of the key-value pair.

Does anyone have a straight-forward idea how this can be implemented
for opensmtpd?

Otherwise: What would be the thoughts on having a config parameter
'preserve_delimiter' (default: off) that just does this?

With best regards,
Tobias

On Wed, 2024-12-11 at 22:59 -1000, Tobias Fiebig wrote:
> Moin,
> 
> just saw this now; Yes, I use table mysql. I will give doing some
> regular dumps to static tables there a try.
> 
> With best regards,
> Tobias
> 
> On Mon, 2024-12-02 at 12:58 +0100, Philipp wrote:
> > Hi
> > 
> > [2024-12-02 10:33] Tobias Fiebig
> > <tob...@reads-this-mailinglist.com>
> > > Moin,
> > > Mostly asking for additional eyes on the idea.
> > > 
> > > [...]
> > > 
> > > Am I running in the totally wrong direction here, or does this
> > > make
> > > sense?
> > 
> > I belive you run in the wrong direction. Do you still use table-
> > mysql?
> > If so: This is probaly the problem. OpenSMTPD table lookups are
> > blocking
> > so when opensmtpd needs some table entry it blooks till the
> > response
> > is
> > availible. For in memory tables[0] this is not a problem. But for
> > external
> > tables this causes some delay.
> > 
> > This is a known issue and it's working on. As a workaround I use
> > some caching tables. They are dumped once a day from ldap and
> > update
> > the tables. It's a bit ugly but it works.
> > 
> > Philipp
> > 
> > [0] The normal availible tables, without extra packages.
> > 
> 

-- 
Dr.-Ing. Tobias Fiebig
T +31 616 80 98 99
M tob...@fiebig.nl


Reply via email to