CLEANUP: muxes/stream-int: Remove flags CS_FL_READ_NULL and SI_FL_READ_NULL
Since the flag CF_SHUTR is no more set to mark the end of the message, these
flags become useless.
This patch should be backported to 1.9.
diff --git a/src/mux_h1.c b/src/mux_h1.c
index b191670..65e9915 100644
--- a/src/mux_h1.c
+++ b/src/mux_h1.c
@@ -1782,7 +1782,7 @@
h1_wake_stream_for_recv(h1s);
if (conn_xprt_read0_pending(conn) && h1s && h1s->cs)
- h1s->cs->flags |= (CS_FL_REOS|CS_FL_READ_NULL);
+ h1s->cs->flags |= CS_FL_REOS;
if (!b_data(&h1c->ibuf))
h1_release_buf(h1c, &h1c->ibuf);
else if (!buf_room_for_htx_data(&h1c->ibuf))
@@ -1890,7 +1890,7 @@
if (h1c->flags & H1C_F_CS_ERROR || conn->flags & CO_FL_ERROR)
flags |= CS_FL_ERROR;
if (conn_xprt_read0_pending(conn))
- flags |= (CS_FL_REOS|CS_FL_READ_NULL);
+ flags |= CS_FL_REOS;
h1s->cs->flags |= flags;
h1s->cs->data_cb->wake(h1s->cs);
}
diff --git a/src/mux_h2.c b/src/mux_h2.c
index 506226c..ab8504e 100644
--- a/src/mux_h2.c
+++ b/src/mux_h2.c
@@ -1443,7 +1443,7 @@
flags |= CS_FL_ERR_PENDING;
if (conn_xprt_read0_pending(h2c->conn))
- flags |= (CS_FL_REOS|CS_FL_READ_NULL);
+ flags |= CS_FL_REOS;
/* Wake all streams with ID > last */
node = eb32_lookup_ge(&h2c->streams_by_id, last + 1);
diff --git a/src/mux_pt.c b/src/mux_pt.c
index 74c802e..4f53920 100644
--- a/src/mux_pt.c
+++ b/src/mux_pt.c
@@ -255,7 +255,7 @@
if (conn_xprt_read0_pending(cs->conn)) {
if (ret == 0)
cs->flags &= ~(CS_FL_RCV_MORE | CS_FL_WANT_ROOM);
- cs->flags |= (CS_FL_EOS|CS_FL_READ_NULL);
+ cs->flags |= CS_FL_EOS;
}
if (cs->conn->flags & CO_FL_ERROR) {
if (ret == 0)
@@ -298,7 +298,7 @@
ret = cs->conn->xprt->rcv_pipe(cs->conn, pipe, count);
if (conn_xprt_read0_pending(cs->conn))
- cs->flags |= (CS_FL_EOS|CS_FL_READ_NULL);
+ cs->flags |= CS_FL_EOS;
if (cs->conn->flags & CO_FL_ERROR)
cs->flags |= CS_FL_ERROR;
return (ret);
diff --git a/src/stream_interface.c b/src/stream_interface.c
index 1d216ae..d13d695 100644
--- a/src/stream_interface.c
+++ b/src/stream_interface.c
@@ -594,16 +594,6 @@
oc->flags |= CF_WRITE_NULL;
}
- /* The last read was received but not reported to the channel
- * (CS_FL_READ_NULL set but not SI_FL_READ_NULL). So do it, even if the
- * EOS was already reported.
- *
- * NOTE: It is a temporary fix to handle client aborts.
- */
- if (cs->flags & CS_FL_READ_NULL && !(si->flags & SI_FL_READ_NULL)) {
- si->flags |= SI_FL_READ_NULL;
- ic->flags |= CF_READ_NULL;
- }
/* Report EOI on the channel if it was reached from the mux point of
* view. */
if ((cs->flags & CS_FL_EOI) && !(ic->flags & CF_EOI))