By copying the info in the stream interface that the mux cleanly reports
aborts, we'll have the ability to check this flag wherever needed regardless
of the presence of a mux or not.
SI_FL_SRC_ADDR = 0x1000, /* get the source ip/port with getsockname */
SI_FL_WANT_PUT = 0x2000, /* an applet would like to put some data into the buffer */
SI_FL_WANT_GET = 0x4000, /* an applet would like to get some data from the buffer */
+ SI_FL_CLEAN_ABRT = 0x8000, /* SI_FL_ERR is used to report aborts, and not SHUTR */
};
/* A stream interface has 3 parts :
si_set_state(&s->si[0], SI_ST_EST);
s->si[0].hcto = sess->fe->timeout.clientfin;
+ if (cs && cs->conn->mux && cs->conn->mux->flags & MX_FL_CLEAN_ABRT)
+ s->si[0].flags |= SI_FL_CLEAN_ABRT;
+
/* attach the incoming connection to the stream interface now. */
if (cs)
si_attach_cs(&s->si[0], cs);