diff --git a/include/proto/session.h b/include/proto/session.h
index 79589d3..487f318 100644
--- a/include/proto/session.h
+++ b/include/proto/session.h
@@ -31,6 +31,7 @@
 #include <types/session.h>
 
 extern struct pool_head *pool2_session;
+void session_free(struct session *sess);
 int init_session();
 
 #endif /* _PROTO_SESSION_H */
diff --git a/src/hlua.c b/src/hlua.c
index c09330b..7df8778 100644
--- a/src/hlua.c
+++ b/src/hlua.c
@@ -2237,7 +2237,7 @@
 out_fail_task:
 	pool_free2(pool2_stream, socket->s);
 out_fail_stream:
-	pool_free2(pool2_session, sess);
+	session_free(sess);
 out_fail_conf:
 	WILL_LJMP(lua_error(L));
 	return 0;
diff --git a/src/peers.c b/src/peers.c
index 6a8771f..df4ecf8 100644
--- a/src/peers.c
+++ b/src/peers.c
@@ -1278,7 +1278,7 @@
 	LIST_DEL(&s->list);
 	pool_free2(pool2_stream, s);
  out_free_sess:
-	pool_free2(pool2_session, sess);
+	session_free(sess);
  out_close:
 	return s;
 }
diff --git a/src/session.c b/src/session.c
index 116816f..e1e9f35 100644
--- a/src/session.c
+++ b/src/session.c
@@ -20,6 +20,11 @@
 
 struct pool_head *pool2_session;
 
+void session_free(struct session *sess)
+{
+	pool_free2(pool2_session, sess);
+}
+
 /* perform minimal intializations, report 0 in case of error, 1 if OK. */
 int init_session()
 {
diff --git a/src/stream.c b/src/stream.c
index 1fba451..6730ad4 100644
--- a/src/stream.c
+++ b/src/stream.c
@@ -240,7 +240,7 @@
 	stream_store_counters(s);
 	pool_free2(pool2_stream, s);
  out_free_sess:
-	pool_free2(pool2_session, sess);
+	session_free(sess);
  out_free_conn:
 	cli_conn->flags &= ~CO_FL_XPRT_TRACKED;
 	conn_xprt_close(cli_conn);
@@ -359,8 +359,8 @@
 	/* FIXME: for now we have a 1:1 relation between stream and session so
 	 * the stream must free the session.
 	 */
-	pool_free2(pool2_session, sess);
 	pool_free2(pool2_stream, s);
+	session_free(sess);
 }
 
 /* Finish initializing a stream from a connection, or kills it if the
@@ -651,8 +651,8 @@
 	/* FIXME: for now we have a 1:1 relation between stream and session so
 	 * the stream must free the session.
 	 */
-	pool_free2(pool2_session, s->sess);
 	pool_free2(pool2_stream, s);
+	session_free(sess);
 
 	/* We may want to free the maximum amount of pools if the proxy is stopping */
 	if (fe && unlikely(fe->state == PR_STSTOPPED)) {
