* Exim - an Internet mail transport agent *
*************************************************/
-/* Copyright (c) The Exim Maintainers 2020 - 2022 */
+/* Copyright (c) The Exim Maintainers 2020 - 2023 */
/* Copyright (c) University of Cambridge 1995 - 2018 */
/* See the file NOTICE for conditions of use and distribution. */
+/* SPDX-License-Identifier: GPL-2.0-or-later */
/* A number of functions for driving outgoing SMTP calls. */
/* Set DSCP value, if we can. For now, if we fail to set the value, we don't
bomb out, just log it and continue in default traffic class. */
+GET_OPTION("dscp");
if (dscp && dscp_lookup(dscp, sc->host_af, &dscp_level, &dscp_option, &dscp_value))
{
HDEBUG(D_transport|D_acl|D_v)
)
{
HDEBUG(D_transport|D_acl|D_v)
- debug_printf_indent("unable to bind outgoing SMTP call to %s: %s", sc->interface,
+ debug_printf_indent("unable to bind outgoing SMTP call to %s: %s\n", sc->interface,
strerror(errno));
close(sock);
return -1;
# ifdef TCP_FASTOPEN_CONNECT
else
{ /* expecting client data */
- debug_printf(" set up lazy-connect\n");
+ DEBUG(D_transport|D_acl|D_v) debug_printf(" set up lazy-connect\n");
setsockopt(sock, IPPROTO_TCP, TCP_FASTOPEN_CONNECT, US &on, sizeof(on));
/* fastopen_blob = NULL; lazy TFO, triggered by data write */
}
sx SMTP connection, contains buffer for pipelining, and socket
mode buffer, write-with-more-likely, write
format a format, starting with one of
- of HELO, MAIL FROM, RCPT TO, DATA, ".", or QUIT.
+ of HELO, MAIL FROM, RCPT TO, DATA, BDAT, ".", or QUIT.
If NULL, flush pipeline buffer only.
... data for the format
log_write(0, LOG_MAIN|LOG_PANIC_DIE, "overlong write_command in outgoing "
"SMTP");
va_end(ap);
- string_from_gstring(&gs);
if (gs.ptr > outblock->buffersize)
log_write(0, LOG_MAIN|LOG_PANIC_DIE, "overlong write_command in outgoing "