summaryrefslogtreecommitdiff
path: root/src/src/transports/smtp.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/src/transports/smtp.c')
-rw-r--r--src/src/transports/smtp.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/src/transports/smtp.c b/src/src/transports/smtp.c
index a121e34ae..7e6e34a67 100644
--- a/src/src/transports/smtp.c
+++ b/src/src/transports/smtp.c
@@ -4436,6 +4436,21 @@ if (!sx->ok)
message_error = Ustrncmp(smtp_command,"end ",4) == 0;
break;
+#ifndef DISABLE_DKIM
+ case EACCES:
+ /* DKIM signing failure: avoid thinking we pipelined quit,
+ just abandon the message and close the socket. */
+
+ message_error = FALSE;
+# ifndef DISABLE_TLS
+ if (sx->cctx.tls_ctx)
+ {
+ tls_close(sx->cctx.tls_ctx, TLS_SHUTDOWN_WAIT);
+ sx->cctx.tls_ctx = NULL;
+ }
+# endif
+ break;
+#endif
default:
message_error = FALSE;
break;