diff --git a/include/proto/obj_type.h b/include/proto/obj_type.h
index 47273ca..afb8d90 100644
--- a/include/proto/obj_type.h
+++ b/include/proto/obj_type.h
@@ -30,6 +30,7 @@
 #include <types/obj_type.h>
 #include <types/proxy.h>
 #include <types/server.h>
+#include <types/stream.h>
 #include <types/stream_interface.h>
 
 static inline enum obj_type obj_type(enum obj_type *t)
@@ -51,6 +52,7 @@
 	case OBJ_TYPE_CONN:     return "CONN";
 	case OBJ_TYPE_SRVRQ:    return "SRVRQ";
 	case OBJ_TYPE_CS:       return "CS";
+	case OBJ_TYPE_STREAM:   return "STREAM";
 	default:                return "!INVAL!";
 	}
 }
@@ -158,6 +160,18 @@
 	return __objt_dns_srvrq(t);
 }
 
+static inline struct stream *__objt_stream(enum obj_type *t)
+{
+	return container_of(t, struct stream, obj_type);
+}
+
+static inline struct stream *objt_stream(enum obj_type *t)
+{
+	if (!t || *t != OBJ_TYPE_STREAM)
+		return NULL;
+	return __objt_stream(t);
+}
+
 static inline void *obj_base_ptr(enum obj_type *t)
 {
 	switch (obj_type(t)) {
diff --git a/include/types/obj_type.h b/include/types/obj_type.h
index e141d69..9410718 100644
--- a/include/types/obj_type.h
+++ b/include/types/obj_type.h
@@ -41,6 +41,7 @@
 	OBJ_TYPE_CONN,         /* object is a struct connection */
 	OBJ_TYPE_SRVRQ,        /* object is a struct dns_srvrq */
 	OBJ_TYPE_CS,           /* object is a struct conn_stream */
+	OBJ_TYPE_STREAM,       /* object is a struct stream */
 	OBJ_TYPE_ENTRIES       /* last one : number of entries */
 } __attribute__((packed)) ;
 
diff --git a/include/types/stream.h b/include/types/stream.h
index 93a39a3..b6a3e84 100644
--- a/include/types/stream.h
+++ b/include/types/stream.h
@@ -151,7 +151,9 @@
 		struct stktable *table;
 	} store[8];                     /* tracked stickiness values to store */
 	int store_count;
-	/* 4 unused bytes here */
+
+	enum obj_type obj_type;         /* object type == OBJ_TYPE_STREAM */
+	/* 3 unused bytes here */
 
 	struct stkctr stkctr[MAX_SESS_STKCTR];  /* content-aware stick counters */
 
