1 /* 2 * Copyright 2023-2024 The OpenSSL Project Authors. All Rights Reserved. 3 * 4 * Licensed under the Apache License 2.0 (the "License"). You may not use 5 * this file except in compliance with the License. You can obtain a copy 6 * in the file LICENSE in the source distribution or at 7 * https://www.openssl.org/source/license.html 8 */ 9 10 #ifndef OSSL_QLOG_EVENT_HELPERS_H 11 # define OSSL_QLOG_EVENT_HELPERS_H 12 13 # include <openssl/ssl.h> 14 # include "internal/qlog.h" 15 # include "internal/quic_types.h" 16 # include "internal/quic_channel.h" 17 # include "internal/quic_txpim.h" 18 # include "internal/quic_record_tx.h" 19 # include "internal/quic_wire_pkt.h" 20 21 /* connectivity:connection_started */ 22 void ossl_qlog_event_connectivity_connection_started(QLOG *qlog, 23 const QUIC_CONN_ID *init_dcid); 24 25 /* connectivity:connection_state_updated */ 26 void ossl_qlog_event_connectivity_connection_state_updated(QLOG *qlog, 27 uint32_t old_state, 28 uint32_t new_state, 29 int handshake_complete, 30 int handshake_confirmed); 31 32 /* connectivity:connection_closed */ 33 void ossl_qlog_event_connectivity_connection_closed(QLOG *qlog, 34 const QUIC_TERMINATE_CAUSE *tcause); 35 36 /* recovery:packet_lost */ 37 void ossl_qlog_event_recovery_packet_lost(QLOG *qlog, 38 const QUIC_TXPIM_PKT *tpkt); 39 40 /* transport:packet_sent */ 41 void ossl_qlog_event_transport_packet_sent(QLOG *qlog, 42 const QUIC_PKT_HDR *hdr, 43 QUIC_PN pn, 44 const OSSL_QTX_IOVEC *iovec, 45 size_t numn_iovec, 46 uint64_t datagram_id); 47 48 /* transport:packet_received */ 49 void ossl_qlog_event_transport_packet_received(QLOG *qlog, 50 const QUIC_PKT_HDR *hdr, 51 QUIC_PN pn, 52 const OSSL_QTX_IOVEC *iovec, 53 size_t numn_iovec, 54 uint64_t datagram_id); 55 56 #endif 57