[Mimedefang] Any way to get MD to accept a Postfix queue ID at RCPT time?

Dianne Skoll dfs at roaringpenguin.com
Tue Apr 28 15:03:46 EDT 2015


On Tue, 28 Apr 2015 13:33:16 -0400
"Bill Cole" <mdlist-20140424 at billmail.scconsult.com> wrote:

>     MIMEDefang seems to have internalized the fact that traditionally 
> (and still by default) Postfix provides no 'i' until after it has 
> decided to accept at least one recipient.  So this overkill logging
> line in filter_recipient:

Yes.  The C code needs updating.  I thinkg (COMPLETELY untested) that
if yout take this block of code from the function "eoh" in mimedefang.c:

    if (!data->qid || (data->qid == NOQUEUE)) {
	char *queueid = smfi_getsymval(ctx, "i");
	if (queueid && *queueid) {
	    data->qid = strdup_with_log(queueid);
	    if (!data->qid) {
		data->qid = NOQUEUE;
	    }
	}
    }

and paste that exact code in the function "rcptto" right before these lines:

    rcpt_mailer = smfi_getsymval(ctx, "{rcpt_mailer}");
    if (!rcpt_mailer || !*rcpt_mailer) rcpt_mailer = "?";

it will do what you want.  Let me know how it goes.

Regards,

Dianne.



More information about the MIMEDefang mailing list