From: Amaury Denoyelle Date: Tue, 31 Dec 2024 14:18:52 +0000 (+0100) Subject: MINOR: mux-quic: add traces on sd attach X-Git-Tag: v3.2-dev3~20 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=4a997e5a932ef35982f4df3ac3ba5871798be2ef;p=thirdparty%2Fhaproxy.git MINOR: mux-quic: add traces on sd attach Add traces into qcs_attach_sc(). This function is called when a request is received on a QCS stream and a streamdesc instance is attached. This will be useful to facilitate debugging. --- diff --git a/src/mux_quic.c b/src/mux_quic.c index 98b3af41dd..1394a36593 100644 --- a/src/mux_quic.c +++ b/src/mux_quic.c @@ -894,17 +894,27 @@ void qcs_send_metadata(struct qcs *qcs) qc_stream_desc_sub_room(qcs->stream, NULL); } +/* Instantiate a streamdesc instance for stream. This is necessary to + * transfer data after a new request reception. can be used to forward + * the first received request data. must be set if the whole request is + * already received. + * + * Returns the newly allocated instance on success or NULL on error. + */ struct stconn *qcs_attach_sc(struct qcs *qcs, struct buffer *buf, char fin) { struct qcc *qcc = qcs->qcc; struct session *sess = qcc->conn->owner; + TRACE_ENTER(QMUX_EV_STRM_RECV, qcc->conn, qcs); /* TODO duplicated from mux_h2 */ sess->t_idle = ns_to_ms(now_ns - sess->accept_ts) - sess->t_handshake; - if (!sc_new_from_endp(qcs->sd, sess, buf)) + if (!sc_new_from_endp(qcs->sd, sess, buf)) { + TRACE_DEVEL("leaving on error", QMUX_EV_STRM_RECV, qcc->conn, qcs); return NULL; + } /* QC_SF_HREQ_RECV must be set once for a stream. Else, nb_hreq counter * will be incorrect for the connection. @@ -948,6 +958,7 @@ struct stconn *qcs_attach_sc(struct qcs *qcs, struct buffer *buf, char fin) se_fl_set_error(qcs->sd); } + TRACE_LEAVE(QMUX_EV_STRM_RECV, qcc->conn, qcs); return qcs->sd->sc; }