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.
conn_stop_tracking(conn);
conn_full_close(conn);
conn_free(conn);
+ /* Let process_stream know it went wrong */
+ s->si[1].flags |= SI_FL_ERR;
return -1;
}
#endif