[Exim] List-separator of null character?

Top Page
Delete this message
Reply to this message
Author: Phil Pennock
Date:  
To: Exim Users
Subject: [Exim] List-separator of null character?
Hi,

I'm scratching my head a little on this one, looking at a migration to
Exim 4 so that we can add support for some mail-platform features.

We put lots of data into CDB files. We do extractions, no problem. But
the list separator remains a colon, or can be set to any other
character; but there are still issues with interfering with characters
that can be valid on the left-hand-side of an email-address which is
wrapped in double-quotes. Eg, AIUI this:

<"foo:bar;wibble!#$baz"@???>

is a perfectly valid email address.

Is there any way to set the list separator to be a null character, '\0'?

Eg, to allow filtering to /dev/null of arbitrary addresses, you could
use a CDB file keyed by mail domain, where the data is the list against
which the $local_part is matched:

devnull_filtering:
driver = smartuser
transport = devnull
domains = cdb;DEVNULLCDB
local_parts = $domain_data

I'd really like to be able to say something like:

   local_parts = <\0 $domain_data
   local_parts = match_list(<separator>, <list-data>)
     # with key-words for "separator" of "null", else ":" as default


This way, we avoid imposing any restrictions on customer email addresses
beyond those mandated by RFCs.

Am I making sense? Am I missing something blindingly obvious which
should make me spend the next week banging my head repeatedly against a
brick wall saying "doh"?

(and no, I don't know of any customers _wanting_ a colon in their email
addresses, but I don't believe in building systems which impose silent
restrictions)

Thanks,
--
2001: Blogging invented. Promises to change the way people bore strangers with
banal anecdotes about their pets. <http://www.thelemon.net/issues/timeline.php>