s2n_quic_core/inet/
datagram.rs1use crate::{
5 connection, inet::ExplicitCongestionNotification, path::LocalAddress, time::Timestamp,
6};
7
8#[derive(Clone, Copy, Debug, PartialEq)]
10pub struct Header<Path> {
11 pub path: Path,
12 pub ecn: ExplicitCongestionNotification,
13}
14
15#[derive(Clone, Copy, Debug, PartialEq)]
17pub struct DatagramInfo {
18 pub timestamp: Timestamp,
19 pub payload_len: usize,
20 pub ecn: ExplicitCongestionNotification,
21 pub destination_connection_id: connection::LocalId,
22 pub destination_connection_id_classification: connection::id::Classification,
23 pub source_connection_id: Option<connection::PeerId>,
24}
25
26#[derive(Clone, Copy, Debug, Default, PartialEq)]
28#[cfg_attr(kani, derive(kani::Arbitrary))]
29pub struct AncillaryData {
30 pub ecn: ExplicitCongestionNotification,
31 pub local_address: LocalAddress,
32 pub local_interface: Option<u32>,
37 pub segment_size: u16,
39}