BUG/MEDIUM: servers: Flag the stream_interface on handshake error.

When creating a new outgoing connection, if we're using ALPN and waiting
for the handshake completion to choose the mux, and for some reason the
handshake failed, add the SI_FL_ERR flag to the stream_interface, so that
process_streams() knows the connection failed, and can attempt to retry,
instead of just hanging.

This should be backported to 1.9.
This commit is contained in:
Olivier Houchard 2018-12-27 18:59:46 +01:00 committed by Willy Tarreau
parent 351411facd
commit 4f41751ad2

View File

@ -1089,6 +1089,8 @@ fail:
conn_stop_tracking(conn); conn_stop_tracking(conn);
conn_full_close(conn); conn_full_close(conn);
conn_free(conn); conn_free(conn);
/* Let process_stream know it went wrong */
s->si[1].flags |= SI_FL_ERR;
return -1; return -1;
} }
#endif #endif