[exim-cvs] Use single TCP segment for SMTP, TLS and TCP clos…

Inizio della pagina
Delete this message
Reply to this message
Autore: Exim Git Commits Mailing List
Data:  
To: exim-cvs
Oggetto: [exim-cvs] Use single TCP segment for SMTP, TLS and TCP closes.
Gitweb: https://git.exim.org/exim.git/commitdiff/2aaa3cdd22a987cbf7c8343d3e6103ee521296dc
Commit:     2aaa3cdd22a987cbf7c8343d3e6103ee521296dc
Parent:     ac35befe29020ebd38c62a7dd48f7977a0856048
Author:     Jeremy Harris <jgh146exb@???>
AuthorDate: Sat Dec 29 19:27:20 2018 +0000
Committer:  Jeremy Harris <jgh146exb@???>
CommitDate: Sun Feb 10 23:22:50 2019 +0000


    Use single TCP segment for SMTP, TLS and TCP closes.


    (cherry picked from commit a7846940c876fd2a76b89240aa83e7083ae9650a)
---
 src/src/smtp_in.c         | 5 +++++
 src/src/transports/smtp.c | 3 +++
 2 files changed, 8 insertions(+)


diff --git a/src/src/smtp_in.c b/src/src/smtp_in.c
index a238ae2..b071298 100644
--- a/src/src/smtp_in.c
+++ b/src/src/smtp_in.c
@@ -3822,6 +3822,11 @@ if (acl_smtp_quit)
     log_write(0, LOG_MAIN|LOG_PANIC, "ACL for QUIT returned ERROR: %s",
       *log_msgp);
   }
+
+#ifdef TCP_CORK
+(void) setsockopt(fileno(smtp_out), IPPROTO_TCP, TCP_CORK, US &on, sizeof(on));
+#endif
+
 if (*user_msgp)
   smtp_respond(US"221", 3, TRUE, *user_msgp);
 else
diff --git a/src/src/transports/smtp.c b/src/src/transports/smtp.c
index 98ab002..c1cba59 100644
--- a/src/src/transports/smtp.c
+++ b/src/src/transports/smtp.c
@@ -4330,6 +4330,9 @@ This change is being made on 31-Jul-98. After over a year of trouble-free
 operation, the old commented-out code was removed on 17-Sep-99. */


SEND_QUIT:
+#ifdef TCP_CORK
+(void) setsockopt(sx.cctx.sock, IPPROTO_TCP, TCP_CORK, US &on, sizeof(on));
+#endif
if (sx.send_quit) (void)smtp_write_command(&sx, SCMD_FLUSH, "QUIT\r\n");

END_OFF: