Noel Jones:
> I believe Ralf's request is about the smtp rejection message 
> sent to the remote client, not about postfix logging.
> 
> ie.  the current reject response in postscreen.c around line 
> 920 or so looks something like:
> 
>     if (dnsbl_action == PS_ACT_DROP) {
>         smtp_reply(vstream_fileno(state->smtp_client_stream),
>            state->smtp_client_addr, state->smtp_client_port,
>                  "521 5.7.1 Blocked by DNSBL\r\n");
>                  state->flags |= PS_FLAG_NOFORWARD;
>              }
> 
> Often complaints are reported by a remote customer forwarding 
> the reject message by an alternate channel. It would be easier 
> to track down customer complaints if the reject message contained
> "521 5.7.1 Client 192.0.2.1 Blocked by DNSBL"
> 
> 
> Yes, the enhanced logging would help too, since you could then 
> search logs for the rejected sender, but this is a far smaller 
> change that would help a great deal in some cases.
> 
> (I wanted to include a patch, but my C foo is limited to 
> cut-and-paste, and sometimes I manage to mess that up too.)

It will involve more change, as smtp_reply() currently does not
take a format string. All smtp_reply() calls would need to be
replaced by smtp_reply(handle, addr, port, "%s", text). The
alternative, a second smtp_reply() function that does take a format
string, would be asking for format string errors.

        Wietse

Reply via email to