Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/external/ibm-public/postfix Add support for blacklistd.



details:   https://anonhg.NetBSD.org/src/rev/1a582e0118c4
branches:  trunk
changeset: 829443:1a582e0118c4
user:      christos <christos%NetBSD.org@localhost>
date:      Thu Feb 01 03:29:41 2018 +0000

description:
Add support for blacklistd.

diffstat:

 external/ibm-public/postfix/dist/src/smtpd/pfilter.c |  19 +++++++++++++++++++
 external/ibm-public/postfix/dist/src/smtpd/pfilter.h |   2 ++
 external/ibm-public/postfix/dist/src/smtpd/smtpd.c   |   5 ++++-
 external/ibm-public/postfix/libexec/smtpd/Makefile   |   7 +++++--
 4 files changed, 30 insertions(+), 3 deletions(-)

diffs (80 lines):

diff -r f80f5b7b7ac5 -r 1a582e0118c4 external/ibm-public/postfix/dist/src/smtpd/pfilter.c
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/external/ibm-public/postfix/dist/src/smtpd/pfilter.c      Thu Feb 01 03:29:41 2018 +0000
@@ -0,0 +1,19 @@
+#include "pfilter.h"
+#include <stdio.h>     /* for NULL */
+#include <blacklist.h>
+
+static struct blacklist *blstate;
+
+void
+pfilter_notify(int a, int fd)
+{
+       if (blstate == NULL)
+               blstate = blacklist_open();
+       if (blstate == NULL)
+               return;
+       (void)blacklist_r(blstate, a, fd, "smtpd");
+       if (a == 0) {
+               blacklist_close(blstate);
+               blstate = NULL;
+       }
+}
diff -r f80f5b7b7ac5 -r 1a582e0118c4 external/ibm-public/postfix/dist/src/smtpd/pfilter.h
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/external/ibm-public/postfix/dist/src/smtpd/pfilter.h      Thu Feb 01 03:29:41 2018 +0000
@@ -0,0 +1,2 @@
+
+void pfilter_notify(int, int);
diff -r f80f5b7b7ac5 -r 1a582e0118c4 external/ibm-public/postfix/dist/src/smtpd/smtpd.c
--- a/external/ibm-public/postfix/dist/src/smtpd/smtpd.c        Thu Feb 01 03:17:00 2018 +0000
+++ b/external/ibm-public/postfix/dist/src/smtpd/smtpd.c        Thu Feb 01 03:29:41 2018 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: smtpd.c,v 1.14 2017/02/14 01:16:48 christos Exp $      */
+/*     $NetBSD: smtpd.c,v 1.15 2018/02/01 03:29:41 christos Exp $      */
 
 /*++
 /* NAME
@@ -1197,6 +1197,8 @@
 #include <smtpd_milter.h>
 #include <smtpd_expand.h>
 
+#include "pfilter.h"
+
  /*
   * Tunable parameters. Make sure that there is some bound on the length of
   * an SMTP command, so that the mail system stays in control even when a
@@ -5048,6 +5050,7 @@
            if (state->error_count >= var_smtpd_hard_erlim) {
                state->reason = REASON_ERROR_LIMIT;
                state->error_mask |= MAIL_ERROR_PROTOCOL;
+               pfilter_notify(1, vstream_fileno(state->client));
                smtpd_chat_reply(state, "421 4.7.0 %s Error: too many errors",
                                 var_myhostname);
                break;
diff -r f80f5b7b7ac5 -r 1a582e0118c4 external/ibm-public/postfix/libexec/smtpd/Makefile
--- a/external/ibm-public/postfix/libexec/smtpd/Makefile        Thu Feb 01 03:17:00 2018 +0000
+++ b/external/ibm-public/postfix/libexec/smtpd/Makefile        Thu Feb 01 03:29:41 2018 +0000
@@ -1,4 +1,4 @@
-#      $NetBSD: Makefile,v 1.6 2017/05/21 15:28:40 riastradh Exp $
+#      $NetBSD: Makefile,v 1.7 2018/02/01 03:29:41 christos Exp $
 
 NOMAN= # defined
 
@@ -13,11 +13,14 @@
 SRCS=  smtpd.c smtpd_token.c smtpd_check.c smtpd_chat.c smtpd_state.c \
        smtpd_peer.c smtpd_sasl_proto.c smtpd_sasl_glue.c smtpd_proxy.c \
        smtpd_xforward.c smtpd_dsn_fix.c smtpd_milter.c smtpd_resolve.c \
-       smtpd_expand.c smtpd_haproxy.c
+       smtpd_expand.c smtpd_haproxy.c pfilter.c
 
 DPADD+= ${LIBPMASTER} ${LIBPMILTER} ${LIBPGLOBAL} ${LIBPDNS} ${LIBPXSASL}
 LDADD+= ${LIBPMASTER} ${LIBPMILTER} ${LIBPGLOBAL} ${LIBPDNS} ${LIBPXSASL}
 
+DPADD+=        ${LIBBLACKLIST}
+LDADD+=        -lblacklist
+
 DPADD+=        ${LIBPTLS} ${LIBSSL} ${LIBCRYPTO}
 LDADD+=        ${LIBPTLS} -lssl -lcrypto
 



Home | Main Index | Thread Index | Old Index