MINOR: conn-stream: Add flags to set the type of the endpoint

This patch is mandatory to invert the endpoint and the context in the
conn-stream. There is no common type (at least for now) for the entity
representing a mux (h1s, h2s...), thus we must set its type when the
endpoint is attached to a conn-stream. There is 2 types for the conn-stream
endpoints: the mux (CS_FL_ENDP_MUX) and the applet (CS_FL_ENDP_APP).
diff --git a/dev/flags/flags.c b/dev/flags/flags.c
index 126e9a0..48d9a86 100644
--- a/dev/flags/flags.c
+++ b/dev/flags/flags.c
@@ -184,6 +184,8 @@
 		printf("0\n");
 		return;
 	}
+	SHOW_FLAG(f, CS_FL_ENDP_APP);
+	SHOW_FLAG(f, CS_FL_ENDP_MUX);
 	SHOW_FLAG(f, CS_FL_WEBSOCKET);
 	SHOW_FLAG(f, CS_FL_NOT_FIRST);
 	SHOW_FLAG(f, CS_FL_KILL_CONN);
diff --git a/include/haproxy/conn_stream-t.h b/include/haproxy/conn_stream-t.h
index 580d104..eee4318 100644
--- a/include/haproxy/conn_stream-t.h
+++ b/include/haproxy/conn_stream-t.h
@@ -57,6 +57,9 @@
 
 	/* flags set by the mux relayed to the stream */
 	CS_FL_WEBSOCKET     = 0x00200000,  /* websocket stream */
+
+	CS_FL_ENDP_MUX      = 0x00400000,  /* Endpoint is a mux */
+	CS_FL_ENDP_APP      = 0x00800000,  /* Endpoint is an applet */
 };
 
 /* cs_shutr() modes */
diff --git a/include/haproxy/conn_stream.h b/include/haproxy/conn_stream.h
index e69f9c1..6304c1b 100644
--- a/include/haproxy/conn_stream.h
+++ b/include/haproxy/conn_stream.h
@@ -65,7 +65,7 @@
 }
 static inline struct connection *cs_conn(const struct conn_stream *cs)
 {
-	if (obj_type(cs->end) == OBJ_TYPE_CONN)
+	if (cs->flags & CS_FL_ENDP_MUX)
 		return __cs_conn(cs);
 	return NULL;
 }
@@ -90,7 +90,7 @@
 }
 static inline struct appctx *cs_appctx(const struct conn_stream *cs)
 {
-	if (obj_type(cs->end) == OBJ_TYPE_APPCTX)
+	if (cs->flags & CS_FL_ENDP_APP)
 		return __cs_appctx(cs);
 	return NULL;
 }
diff --git a/src/conn_stream.c b/src/conn_stream.c
index 86db303..d2fd729 100644
--- a/src/conn_stream.c
+++ b/src/conn_stream.c
@@ -60,6 +60,7 @@
 		}
 		else if (cs_check(cs))
 			cs->data_cb = &check_conn_cb;
+		cs->flags |= CS_FL_ENDP_MUX;
 	}
 	else if ((appctx = objt_appctx(endp)) != NULL) {
 		appctx->owner = cs;
@@ -67,6 +68,7 @@
 			cs->si->ops = &si_applet_ops;
 			cs->data_cb = NULL;
 		}
+		cs->flags |= CS_FL_ENDP_APP;
 	}
 }