MEDIUM: stream: also accept appctx as origin in stream_accept_session()
It's likely that the code could be simplified a bit though.
diff --git a/src/stream.c b/src/stream.c
index 7fa399c..256b283 100644
--- a/src/stream.c
+++ b/src/stream.c
@@ -70,6 +70,7 @@
struct listener *l = sess->listener;
struct proxy *p = sess->fe;
struct connection *conn = objt_conn(sess->origin);
+ struct appctx *appctx = objt_appctx(sess->origin);
int ret;
int i;
@@ -153,6 +154,8 @@
/* attach the incoming connection to the stream interface now. */
if (conn)
si_attach_conn(&s->si[0], conn);
+ else if (appctx)
+ si_attach_appctx(&s->si[0], appctx);
if (likely(sess->fe->options2 & PR_O2_INDEPSTR))
s->si[0].flags |= SI_FL_INDEP_STR;
@@ -207,6 +210,8 @@
/* finish initialization of the accepted file descriptor */
if (conn)
conn_data_want_recv(conn);
+ else if (appctx)
+ s->si[0].flags |= SI_FL_WAIT_DATA;
/* FIXME: we shouldn't restrict ourselves to connections but for now
* the only ->accept() only works with sessions.