/* * tcpestat.h / tcpestats.h TCP extended statistics * * ========================================================================= * * Open Watcom Project * * Copyright (c) 2004-2010 The Open Watcom Contributors. All Rights Reserved. * * This file is automatically generated. Do not edit directly. * * ========================================================================= */ #ifndef _TCPESTATS_ #define _TCPESTATS_ #ifndef _ENABLE_AUTODEPEND #pragma read_only_file; #endif #ifdef __cplusplus extern "C" { #endif /* TCP extended statistics types */ typedef enum { TcpConnectionEstatsSynOpts = 0, TcpConnectionEstatsData = 1, TcpConnectionEstatsSndCong = 2, TcpConnectionEstatsPath = 3, TcpConnectionEstatsSendBuff = 4, TcpConnectionEstatsRec = 5, TcpConnectionEstatsObsRec = 6, TcpConnectionEstatsBandwidth = 7, TcpConnectionEstatsFineRtt = 8, TcpConnectionEstatsMaximum = 9 } TCP_ESTATS_TYPE; typedef TCP_ESTATS_TYPE *PTCP_ESTATS_TYPE; /* TCP boolean optional */ typedef enum _TCP_BOOLEAN_OPTIONAL { TcpBoolOptDisabled = 0, TcpBoolOptEnabled = 1, TcpBoolOptUnchanged = -1 } TCP_BOOLEAN_OPTIONAL; typedef TCP_BOOLEAN_OPTIONAL *PTCP_BOOLEAN_OPTIONAL; /* TCP extended statistics options (version 0) */ typedef struct _TCP_ESTATS_SYN_OPTS_ROS_v0 { BOOLEAN ActiveOpen; ULONG MssRcvd; ULONG MssSent; } TCP_ESTATS_SYN_OPTS_ROS_v0; typedef TCP_ESTATS_SYN_OPTS_ROS_v0 *PTCP_ESTATS_SYN_OPTS_ROS_v0; /* TCP soft errors */ typedef enum { TcpErrorNone = 0, TcpErrorBelowDataWindow = 1, TcpErrorAboveDataWindow = 2, TcpErrorBelowAckWindow = 3, TcpErrorAboveAckWindow = 4, TcpErrorBelowTsWindow = 5, TcpErrorAboveTsWindow = 6, TcpErrorDataChecksumError = 7, TcpErrorDataLengthError = 8, TcpErrorMaxSoftError = 9 } TCP_SOFT_ERROR; typedef TCP_SOFT_ERROR *PTCP_SOFT_ERROR; /* TCP extended statistics data (version 0) */ typedef struct _TCP_ESTATS_DATA_ROD_v0 { ULONG64 DataBytesOut; ULONG64 DataSegsOut; ULONG64 DataBytesIn; ULONG64 DataSegsIn; ULONG64 SegsOut; ULONG64 SegsIn; ULONG SoftErrors; ULONG SoftErrorReason; ULONG SndUna; ULONG SndNxt; ULONG SndMax; ULONG64 ThruBytesAcked; ULONG RcvNxt; ULONG64 ThruBytesReceived; } TCP_ESTATS_DATA_ROD_v0; typedef TCP_ESTATS_DATA_ROD_v0 *PTCP_ESTATS_DATA_ROD_v0; typedef struct _TCP_ESTATS_DATA_RW_v0 { BOOLEAN EnableCollection; } TCP_ESTATS_DATA_RW_v0; typedef TCP_ESTATS_DATA_RW_v0 *PTCP_ESTATS_DATA_RW_v0; /* TCP extended statistics sender congestion information (version 0) */ typedef struct _TCP_ESTATS_SND_CNG_ROD_v0 { ULONG SndLimTransRwin; ULONG SndLimTimeRwin; SIZE_T SndLimBytesRwin; ULONG SndLimTransCwnd; ULONG SndLimTimeCwnd; SIZE_T SndLimBytesCwnd; ULONG SndLimTransSnd; ULONG SndLimTimeSnd; SIZE_T SndLimBytesSnd; ULONG SlowStart; ULONG CongAvoid; ULONG OtherReductions; ULONG CurCwnd; ULONG MaxSsCwnd; ULONG MaxCaCwnd; ULONG CurSsthresh; ULONG MaxSsthresh; ULONG MinSsthresh; } TCP_ESTATS_SND_CONG_ROD_v0; typedef TCP_ESTATS_SND_CONG_ROD_v0 *PTCP_ESTATS_SND_CONG_ROD_v0; typedef struct _TCP_ESTATS_SND_CONG_ROS_v0 { ULONG LimCwnd; } TCP_ESTATS_SND_CONG_ROS_v0; typedef TCP_ESTATS_SND_CONG_ROS_v0 *PTCP_ESTATS_SND_CONG_ROS_v0; typedef struct _TCP_ESTATS_SND_CONG_RW_v0 { BOOLEAN EnableCollection; } TCP_ESTATS_SND_CONG_RW_v0; typedef TCP_ESTATS_SND_CONG_RW_v0 *PTCP_ESTATS_SND_CONG_RW_v0; /* TCP extended statistics path (version 0) */ typedef struct _TCP_ESTATS_PATH_ROD_v0 { ULONG FastRetran; ULONG Timeouts; ULONG SubsequentTimeouts; ULONG CurTimeoutCount; ULONG AbruptTimeouts; ULONG PktsRetrans; ULONG BytesRetrans; ULONG DupAcksIn; ULONG SacksRcvd; ULONG SackBlocksRcvd; ULONG CongSignals; ULONG PreCongSumCwnd; ULONG PreCongSumRtt; ULONG PostCongSumRtt; ULONG PostCongCountRtt; ULONG EcnSignals; ULONG EceRcvd; ULONG SendStall; ULONG QuenchRcvd; ULONG RetranThresh; ULONG SndDupAckEpisodes; ULONG SumBytesReordered; ULONG NonRecovDa; ULONG NonRecovDaEpisodes; ULONG AckAfterFr; ULONG DsackDups; ULONG SampleRtt; ULONG SmoothedRtt; ULONG RttVar; ULONG MaxRtt; ULONG MinRtt; ULONG SumRtt; ULONG CountRtt; ULONG CurRto; ULONG MaxRto; ULONG MinRto; ULONG CurMss; ULONG MaxMss; ULONG MinMss; ULONG SpuriousRtoDetections; } TCP_ESTATS_PATH_ROD_v0; typedef TCP_ESTATS_PATH_ROD_v0 *PTCP_ESTATS_PATH_ROD_v0; typedef struct _TCP_ESTATS_PATH_RW_v0 { BOOLEAN EnableCollection; } TCP_ESTATS_PATH_RW_v0; typedef TCP_ESTATS_PATH_RW_v0 *PTCP_ESTATS_PATH_RW_v0; /* TCP extended statistics send buffer (version 0) */ typedef struct _TCP_ESTATS_SEND_BUFF_ROD_v0 { SIZE_T CurRetxQueue; SIZE_T MaxRetxQueue; SIZE_T CurAppWQueue; SIZE_T MaxAppWQueue; } TCP_ESTATS_SEND_BUFF_ROD_v0; typedef TCP_ESTATS_SEND_BUFF_ROD_v0 *PTCP_ESTATS_SEND_BUFF_ROD_v0; typedef struct _TCP_ESTATS_SEND_BUFF_RW_v0 { BOOLEAN EnableCollection; } TCP_ESTATS_SEND_BUFF_RW_v0; typedef TCP_ESTATS_SEND_BUFF_RW_v0 *PTCP_ESTATS_SEND_BUFF_RW_v0; /* TCP extended statistics receiver information (version 0) */ typedef struct _TCP_ESTATS_REC_ROD_v0 { ULONG CurRwinSent; ULONG MaxRwinSent; ULONG MinRwinSent; ULONG LimRwin; ULONG DupAckEpisodes; ULONG DupAcksOut; ULONG CeRcvd; ULONG EcnSent; ULONG EcnNoncesRcvd; ULONG CurReasmQueue; ULONG MaxReasmQueue; SIZE_T CurAppRQueue; SIZE_T MaxAppRQueue; UCHAR WinScaleSent; } TCP_ESTATS_REC_ROD_v0; typedef TCP_ESTATS_REC_ROD_v0 *PTCP_ESTATS_REC_ROD_v0; typedef struct _TCP_ESTATS_REC_RW_v0 { BOOLEAN EnableCollection; } TCP_ESTATS_REC_RW_v0; typedef TCP_ESTATS_REC_RW_v0 *PTCP_ESTATS_REC_RW_v0; typedef struct _TCP_ESTATS_OBS_REC_ROD_v0 { ULONG CurRwinRcvd; ULONG MaxRwinRcvd; ULONG MinRwinRcvd; UCHAR WinScaleRcvd; } TCP_ESTATS_OBS_REC_ROD_v0; typedef TCP_ESTATS_OBS_REC_ROD_v0 *PTCP_ESTATS_OBS_REC_ROD_v0; typedef struct _TCP_ESTATS_OBS_REC_RW_v0 { BOOLEAN EnableCollection; } TCP_ESTATS_OBS_REC_RW_v0; typedef TCP_ESTATS_OBS_REC_RW_v0 *PTCP_ESTATS_OBS_REC_RW_v0; /* TCP extended statistics bandwidth (version 0) */ typedef struct _TCP_ESTATS_BANDWIDTH_RW_v0 { TCP_BOOLEAN_OPTIONAL EnableCollectionOutbound; TCP_BOOLEAN_OPTIONAL EnableCollectionInbound; } TCP_ESTATS_BANDWIDTH_RW_v0; typedef TCP_ESTATS_BANDWIDTH_RW_v0 *PTCP_ESTATS_BANDWIDTH_RW_v0; typedef struct _TCP_ESTATS_BANDWIDTH_ROD_v0 { ULONG64 OutboundBandwidth; ULONG64 InboundBandwidth; ULONG64 OutboundInstability; ULONG64 InboundInstability; BOOLEAN OutboundBandwidthPeaked; BOOLEAN InboundBandwidthPeaked; } TCP_ESTATS_BANDWIDTH_ROD_v0; typedef TCP_ESTATS_BANDWIDTH_ROD_v0 *PTCP_ESTATS_BANDWIDTH_ROD_v0; /* TCP extended statistics fine RTT information (version 0) */ typedef struct _TCP_ESTATS_FINE_RTT_RW_v0 { BOOLEAN EnableCollection; } TCP_ESTATS_FINE_RTT_RW_v0; typedef TCP_ESTATS_FINE_RTT_RW_v0 *PTCP_ESTATS_FINE_RTT_RW_v0; typedef struct _TCP_ESTATS_FINE_RTT_ROD_v0 { ULONG RttVar; ULONG MaxRtt; ULONG MinRtt; ULONG SumRtt; } TCP_ESTATS_FINE_RTT_ROD_v0; typedef TCP_ESTATS_FINE_RTT_ROD_v0 *PTCP_ESTATS_FINE_RTT_ROD_v0; #ifdef __cplusplus } /* extern "C" */ #endif #endif /* _TCPESTATS_ */