Postfix non-production snapshot 20091104

View: New views
2 Messages — Rating Filter:   Alert me  

Postfix non-production snapshot 20091104

by Wietse Venema :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Postfix 2.7-20091104-nonprod introduces a "speed adjust" feature
that reduces the number of before-queue filter processes, without
reducing the number of before-filter SMTP server processes.

This addresses a concern of people in Europe who want to reject
all bad mail with a before-queue filter, instead of having to use
an after-queue filter and having to discard mail (which is illegal)
or having to bounce mail (which violates good network citizenship).

With "smtpd_proxy_options = speed_adjust", the SMTP server will
receive the entire message before it connects to a content filter.
For more information see the RELEASE_NOTES.

This is released as a non-production release first, because I took
the opportunity to clean up the existing before-queue filter code.

        Wietse

PATCH: Postfix non-production snapshot 20091104

by Wietse Venema :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Wietse Venema:

> Postfix 2.7-20091104-nonprod introduces a "speed adjust" feature
> that reduces the number of before-queue filter processes, without
> reducing the number of before-filter SMTP server processes.
>
> This addresses a concern of people in Europe who want to reject
> all bad mail with a before-queue filter, instead of having to use
> an after-queue filter and having to discard mail (which is illegal)
> or having to bounce mail (which violates good network citizenship).
>
> With "smtpd_proxy_options = speed_adjust", the SMTP server will
> receive the entire message before it connects to a content filter.
> For more information see the RELEASE_NOTES.
>
> This is released as a non-production release first, because I took
> the opportunity to clean up the existing before-queue filter code.

Attached is a patch that fixes a segfault due to an incomplete API
change. I'll upload a 20091105 non-production snapshot later today.

        Wietse

diff --exclude=man --exclude=html --exclude=README_FILES --exclude=.indent.pro --exclude=Makefile.in -bcr /var/tmp/postfix-2.7-20091104-nonprod/src/smtpd/smtpd.c ./src/smtpd/smtpd.c
*** /var/tmp/postfix-2.7-20091104-nonprod/src/smtpd/smtpd.c Wed Nov  4 12:17:15 2009
--- ./src/smtpd/smtpd.c Thu Nov  5 10:37:51 2009
***************
*** 3068,3074 ****
      } else if ((state->err & CLEANUP_STAT_CONT) != 0) {
  state->error_mask |= MAIL_ERROR_POLICY;
  detail = cleanup_stat_detail(CLEANUP_STAT_CONT);
! if (proxy->buffer) {
     smtpd_chat_reply(state, "%s", STR(proxy->buffer));
  } else if (why && LEN(why) > 0) {
     /* Allow address-specific DSN status in header/body_checks. */
--- 3068,3074 ----
      } else if ((state->err & CLEANUP_STAT_CONT) != 0) {
  state->error_mask |= MAIL_ERROR_POLICY;
  detail = cleanup_stat_detail(CLEANUP_STAT_CONT);
! if (proxy && proxy->buffer) {
     smtpd_chat_reply(state, "%s", STR(proxy->buffer));
  } else if (why && LEN(why) > 0) {
     /* Allow address-specific DSN status in header/body_checks. */