MEDIUM: log: add a new LW_XPRT flag to pin the transport layer

This flag will have to be set on log tags which require transport layer
information. They will prevent the conn_xprt_close() call from releasing
the transport layer too early.
diff --git a/include/types/log.h b/include/types/log.h
index 0224326..70dc9fa 100644
--- a/include/types/log.h
+++ b/include/types/log.h
@@ -131,6 +131,7 @@
 #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 7c218bf..8517103 100644
--- a/src/session.c
+++ b/src/session.c
@@ -488,6 +488,10 @@
 		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;