@@ -348,6 +348,73 @@ s! {
348348 pub len: :: __u32,
349349 pub options: :: __u32,
350350 }
351+
352+ // netinet/tcp.h
353+
354+ pub struct tcp_info {
355+ pub tcpi_state: u8 ,
356+ pub tcpi_ca_state: u8 ,
357+ pub tcpi_retransmits: u8 ,
358+ pub tcpi_probes: u8 ,
359+ pub tcpi_backoff: u8 ,
360+ pub tcpi_options: u8 ,
361+ /*
362+ * FIXME(musl): when musl headers are more up to date
363+ /// This contains the bitfields `tcpi_snd_wscale` and `tcpi_rcv_wscale`.
364+ /// Each is 4 bits.
365+ pub tcpi_snd_rcv_wscale: u8,
366+ /// This contains the bitfields `tcpi_delivery_rate_app_limited` (1 bit) and
367+ /// `tcpi_fastopen_client_fail` (2 bits).
368+ pub tcpi_delivery_fastopen_bitfields: u8,
369+ */
370+ pub tcpi_rto: u32 ,
371+ pub tcpi_ato: u32 ,
372+ pub tcpi_snd_mss: u32 ,
373+ pub tcpi_rcv_mss: u32 ,
374+ pub tcpi_unacked: u32 ,
375+ pub tcpi_sacked: u32 ,
376+ pub tcpi_lost: u32 ,
377+ pub tcpi_retrans: u32 ,
378+ pub tcpi_fackets: u32 ,
379+ pub tcpi_last_data_sent: u32 ,
380+ pub tcpi_last_ack_sent: u32 ,
381+ pub tcpi_last_data_recv: u32 ,
382+ pub tcpi_last_ack_recv: u32 ,
383+ pub tcpi_pmtu: u32 ,
384+ pub tcpi_rcv_ssthresh: u32 ,
385+ pub tcpi_rtt: u32 ,
386+ pub tcpi_rttvar: u32 ,
387+ pub tcpi_snd_ssthresh: u32 ,
388+ pub tcpi_snd_cwnd: u32 ,
389+ pub tcpi_advmss: u32 ,
390+ pub tcpi_reordering: u32 ,
391+ pub tcpi_rcv_rtt: u32 ,
392+ pub tcpi_rcv_space: u32 ,
393+ pub tcpi_total_retrans: u32 ,
394+ pub tcpi_pacing_rate: u64 ,
395+ pub tcpi_max_pacing_rate: u64 ,
396+ pub tcpi_bytes_acked: u64 ,
397+ pub tcpi_bytes_received: u64 ,
398+ pub tcpi_segs_out: u32 ,
399+ pub tcpi_segs_in: u32 ,
400+ pub tcpi_notsent_bytes: u32 ,
401+ pub tcpi_min_rtt: u32 ,
402+ pub tcpi_data_segs_in: u32 ,
403+ pub tcpi_data_segs_out: u32 ,
404+ pub tcpi_delivery_rate: u64 ,
405+ pub tcpi_busy_time: u64 ,
406+ pub tcpi_rwnd_limited: u64 ,
407+ pub tcpi_sndbuf_limited: u64 ,
408+ pub tcpi_delivered: u32 ,
409+ pub tcpi_delivered_ce: u32 ,
410+ pub tcpi_bytes_sent: u64 ,
411+ pub tcpi_bytes_retrans: u64 ,
412+ pub tcpi_dsack_dups: u32 ,
413+ pub tcpi_reord_seen: u32 ,
414+ // FIXME(musl): to uncomment once CI musl is updated
415+ //pub tcpi_rcv_ooopack: u32,
416+ //pub tcpi_snd_wnd: u32,
417+ }
351418}
352419
353420s_no_extra_traits ! {
0 commit comments