}
}
+/* Return a character to identify the packet number space <pktns> of <qc> QUIC
+ * connection. 'I' for Initial packet number space, 'H' for Handshake packet
+ * space, and 'A' for Application data number space, or '-' if not found.
+ */
+static inline char quic_pktns_char(const struct quic_conn *qc,
+ const struct quic_pktns *pktns)
+{
+ if (pktns == &qc->pktns[QUIC_TLS_PKTNS_01RTT])
+ return 'A';
+ else if (pktns == &qc->pktns[QUIC_TLS_PKTNS_HANDSHAKE])
+ return 'H';
+ else if (pktns == &qc->pktns[QUIC_TLS_PKTNS_INITIAL])
+ return 'I';
+
+ return '-';
+}
+
/* Return the TLS encryption level to be used for <packet_type>
* QUIC packet type.
* Returns -1 if there is no TLS encryption level for <packet_type>
const struct list *lost_pkts = a3;
if (pktns) {
- chunk_appendf(&trace_buf, " pktns=%s",
- pktns == &qc->pktns[QUIC_TLS_PKTNS_INITIAL] ? "I" :
- pktns == &qc->pktns[QUIC_TLS_PKTNS_01RTT] ? "01RTT": "H");
+ chunk_appendf(&trace_buf, " pktns=%c", quic_pktns_char(qc, pktns));
if (pktns->tx.loss_time)
chunk_appendf(&trace_buf, " loss_time=%dms",
TICKS_TO_MS(tick_remain(now_ms, pktns->tx.loss_time)));
chunk_appendf(&trace_buf, " ifae_pkts=%llu",
(unsigned long long)*ifae_pkts);
if (pktns) {
- chunk_appendf(&trace_buf, " pktns=%s pp=%d",
- pktns == &qc->pktns[QUIC_TLS_PKTNS_INITIAL] ? "I" :
- pktns == &qc->pktns[QUIC_TLS_PKTNS_01RTT] ? "01RTT": "H",
+ chunk_appendf(&trace_buf, " pktns=%c pp=%d",
+ quic_pktns_char(qc, pktns),
pktns->tx.pto_probe);
if (mask & (QUIC_EV_CONN_STIMER|QUIC_EV_CONN_SPTO)) {
if (pktns->tx.in_flight)
const struct quic_frame *frm;
if (pkt->flags & QUIC_FL_TX_PACKET_ACK)
chunk_appendf(&trace_buf, " ack");
- chunk_appendf(&trace_buf, " pn=%lu(%s) iflen=%llu",
+ chunk_appendf(&trace_buf, " pn=%lu(%c) iflen=%llu",
(unsigned long)pkt->pn_node.key,
- pkt->pktns == &qc->pktns[QUIC_TLS_PKTNS_INITIAL] ? "I" :
- pkt->pktns == &qc->pktns[QUIC_TLS_PKTNS_01RTT] ? "01RTT": "H",
+ quic_pktns_char(qc, pkt->pktns),
(unsigned long long)pkt->in_flight_len);
chunk_appendf(&trace_buf, " rx.bytes=%llu tx.bytes=%llu",
(unsigned long long)qc->rx.bytes,