]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
BUG/MEDIUM: stream_int: Don't check CO_FL_SOCK_RD_SH flag to trigger cs receive
authorChristopher Faulet <cfaulet@haproxy.com>
Tue, 17 Apr 2018 12:33:47 +0000 (14:33 +0200)
committerChristopher Faulet <cfaulet@haproxy.com>
Wed, 8 Aug 2018 08:41:11 +0000 (10:41 +0200)
It is mandatory to be sure to process data blocked in the RX buffer of the
conn_stream while the shutr/read0 was already processed. The stream interface
doesn't need to rely on this flags because it already tests CS_FL_EOS.

src/stream_interface.c

index 1d67c31b2e254141f211824820f587490434c1d3..e56a7c135e5237394d50d9bc64bab3b6910eee65 100644 (file)
@@ -1235,7 +1235,7 @@ static void si_cs_recv_cb(struct conn_stream *cs)
         * that if such an event is not handled above in splice, it will be handled here by
         * recv().
         */
-       while (!(conn->flags & (CO_FL_ERROR | CO_FL_SOCK_RD_SH | CO_FL_WAIT_ROOM | CO_FL_HANDSHAKE)) &&
+       while (!(conn->flags & (CO_FL_ERROR | CO_FL_WAIT_ROOM | CO_FL_HANDSHAKE)) &&
               !(cs->flags & (CS_FL_ERROR|CS_FL_EOS)) && !(ic->flags & CF_SHUTR)) {
                max = channel_recv_max(ic);