diff --git a/include/types/log.h b/include/types/log.h index 02243260b..70dc9faf5 100644 --- a/include/types/log.h +++ b/include/types/log.h @@ -131,6 +131,7 @@ struct logformat_node { #define LW_RSPHDR 2048 /* response header(s) */ #define LW_BCKIP 4096 /* backend IP */ #define LW_FRTIP 8192 /* frontend IP */ +#define LW_XPRT 16384 /* transport layer information (eg: SSL) */ struct logsrv { struct list list; diff --git a/src/session.c b/src/session.c index 7c218bf80..85171037b 100644 --- a/src/session.c +++ b/src/session.c @@ -488,6 +488,10 @@ int session_complete(struct session *s) goto out_free_rep; } + /* if logs require transport layer information, note it on the connection */ + if (s->logs.logwait & LW_XPRT) + s->si[0].conn.flags |= CO_FL_XPRT_TRACKED; + /* we want the connection handler to notify the stream interface about updates. */ s->si[0].conn.flags |= CO_FL_WAKE_DATA;