#ifdef TCP_FASTOPEN
+/* Try to record if TFO was attmepted and if it was successfully used. */
+
static void
tfo_out_check(int sock)
{
+static BOOL done_once = FALSE;
+
+if (done_once) return;
+done_once = TRUE;
+
# ifdef __FreeBSD__
struct tcp_info tinfo;
socklen_t len = sizeof(tinfo);
#ifndef DISABLE_EVENT
deliver_host_address = host->address;
deliver_host_port = port;
-if (event_raise(tb->event_action, US"tcp:connect", NULL)) return -1;
+if (event_raise(tb->event_action, US"tcp:connect", NULL, &errno)) return -1;
#endif
if ((sock = ip_socket(SOCK_STREAM, host_af)) < 0) return -1;
}
#ifdef TCP_FASTOPEN
- tfo_out_check(sx->cctx.sock);
+tfo_out_check(sx->cctx.sock);
#endif
/* Return a value that depends on the SMTP return code. On some systems a