summaryrefslogtreecommitdiff
path: root/mail/sendmail/patches/patch-az
diff options
context:
space:
mode:
Diffstat (limited to 'mail/sendmail/patches/patch-az')
-rw-r--r--mail/sendmail/patches/patch-az52
1 files changed, 49 insertions, 3 deletions
diff --git a/mail/sendmail/patches/patch-az b/mail/sendmail/patches/patch-az
index cb22ee58a81..c26f59e5197 100644
--- a/mail/sendmail/patches/patch-az
+++ b/mail/sendmail/patches/patch-az
@@ -1,6 +1,6 @@
-$NetBSD: patch-az,v 1.2 2014/12/06 23:22:20 jnemeth Exp $
+$NetBSD: patch-az,v 1.3 2019/07/15 04:32:49 jnemeth Exp $
---- sendmail/srvrsmtp.c.orig 2014-11-12 03:02:04.000000000 +0000
+--- sendmail/srvrsmtp.c.orig 2015-03-18 11:47:12.000000000 +0000
+++ sendmail/srvrsmtp.c
@@ -46,6 +46,10 @@ static bool tls_ok_srv = false;
static bool NotFirstDelivery = false;
@@ -13,7 +13,53 @@ $NetBSD: patch-az,v 1.2 2014/12/06 23:22:20 jnemeth Exp $
/* server features */
#define SRV_NONE 0x0000 /* none... */
#define SRV_OFFER_TLS 0x0001 /* offer STARTTLS */
-@@ -3983,8 +3987,8 @@ smtp_data(smtp, e)
+@@ -1328,6 +1332,7 @@ smtp(nullserver, d_flags, e)
+ (int) tp.tv_sec +
+ (tp.tv_usec >= 500000 ? 1 : 0)
+ );
++ BLACKLIST_NOTIFY(BLACKLIST_AUTH_FAIL, fd, "pre-greeting traffic");
+ }
+ }
+ }
+@@ -1589,7 +1594,12 @@ smtp(nullserver, d_flags, e)
+ /* get an OK if we're done */
+ if (result == SASL_OK)
+ {
++ int fd;
++
+ authenticated:
++ fd = sm_io_getinfo(InChannel, SM_IO_WHAT_FD, NULL);
++ BLACKLIST_NOTIFY(BLACKLIST_AUTH_OK, fd, "AUTH OK");
++
+ message("235 2.0.0 OK Authenticated");
+ authenticating = SASL_IS_AUTH;
+ macdefine(&BlankEnvelope.e_macro, A_TEMP,
+@@ -1721,8 +1731,12 @@ smtp(nullserver, d_flags, e)
+ }
+ else
+ {
++ int fd;
++
+ /* not SASL_OK or SASL_CONT */
+ message("535 5.7.0 authentication failed");
++ fd = sm_io_getinfo(InChannel, SM_IO_WHAT_FD, NULL);
++ BLACKLIST_NOTIFY(BLACKLIST_AUTH_FAIL, fd, "AUTH FAIL");
+ if (LogLevel > 9)
+ sm_syslog(LOG_WARNING, e->e_id,
+ "AUTH failure (%s): %s (%d) %s, relay=%.100s",
+@@ -3523,7 +3537,11 @@ doquit:
+ #if MAXBADCOMMANDS > 0
+ if (++n_badcmds > MAXBADCOMMANDS)
+ {
++ int fd;
++
+ stopattack:
++ fd = sm_io_getinfo(InChannel, SM_IO_WHAT_FD, NULL);
++ BLACKLIST_NOTIFY(BLACKLIST_ABUSIVE_BEHAVIOR, fd, "too many bad commands");
+ message("421 4.7.0 %s Too many bad commands; closing connection",
+ MyHostName);
+
+@@ -3992,8 +4010,8 @@ smtp_data(smtp, e)
id = e->e_id;
#if NAMED_BIND