From a02e8c951096e5b84b12a4762611bd284c50fe93 Mon Sep 17 00:00:00 2001 From: Willy Tarreau Date: Thu, 12 Mar 2015 22:42:29 +0100 Subject: [PATCH] MINOR: connection: make conn_sock_shutw() actually perform the shutdown() call This function was not used yet and was only supposed to mark the connection as shutdown for write. Unfortunately at other places in stream_interface.c, we're seeing a bit of layering violations with attempts to perform the shutdown on the fd directly. Let's make this function call shutdown() itself so that the callers only have to care about the connection. --- include/proto/connection.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/include/proto/connection.h b/include/proto/connection.h index 76093a51b5..fc97f1c333 100644 --- a/include/proto/connection.h +++ b/include/proto/connection.h @@ -412,6 +412,8 @@ static inline void conn_sock_shutw(struct connection *c) { c->flags |= CO_FL_SOCK_WR_SH; __conn_sock_stop_send(c); + if (conn_ctrl_ready(c)) + shutdown(c->t.sock.fd, SHUT_WR); } static inline void conn_data_shutw(struct connection *c)