Autor: Wakko Warner Data: A: Kevin P. Fleming CC: exim-users Assumpte: Re: [Exim] $message_id is blank
> > exim v4.20 > >
> > I'm trying to use $message_id in the RCPT acl, however, I'm finding that it
> > is blank when it expands it. The manual isn't clear about this, it only
> > says it's not allocated to the message until the header has been
> > successfully received.
>
> Exactly! The RCPT ACL is run immediately after the reception of each RCPT TO:<>
> SMTP command. The data phase has not started yet, ergo there has not been any
> header information transferred.
Interpretation... Tell me, what would be the difference between generating
a message id at the start of the session (resetting on each reset) instead
of after headers are received?
I was working on doing some logging to sql (don't knock it, for what I'm
doing it's easier than parsing logs, lets not argue sql here). I needed the
message ID at RCPT time.
What I woundup doing is generating a temp ID (something like
TMP-${hmac{md5}{}{$pid-$tod_log}} and setting acl_m1 to it) then after data,
if the acl_m1 wasn't blank, I'd do an update of the table to the real
message id.
Of course, this would be annoying (maybe) if someone were doing callouts or
something and never did DATA which resulted in the TMP ids.
P.S. If you're wondering, I've yet to see a slowdown with the SQL queries.
daily sql logs are about 6mb long.
--
Lab tests show that use of micro$oft causes cancer in lab animals