Home | History | Annotate | Download | only in include
      1 /**
      2  * This file has no copyright assigned and is placed in the Public Domain.
      3  * This file is part of the mingw-w64 runtime package.
      4  * No warranty is given; refer to the file DISCLAIMER.PD within this package.
      5  */
      6 #ifndef _INC_TCPMIB
      7 #define _INC_TCPMIB
      8 
      9 #ifndef ANY_SIZE
     10 #define ANY_SIZE 1
     11 #endif
     12 
     13 #if (_WIN32_WINNT >= 0x0600)
     14 
     15 #ifdef __cplusplus
     16 extern "C" {
     17 #endif
     18 
     19 typedef enum _TCP_CONNECTION_OFFLOAD_STATE {
     20   TcpConnectionOffloadStateInHost       = 0,
     21   TcpConnectionOffloadStateOffloading   = 1,
     22   TcpConnectionOffloadStateOffloaded    = 2,
     23   TcpConnectionOffloadStateUploading    = 3,
     24   TcpConnectionOffloadStateMax          = 4
     25 } TCP_CONNECTION_OFFLOAD_STATE;
     26 
     27 typedef struct _MIB_TCP6ROW {
     28   MIB_TCP_STATE State;
     29   IN6_ADDR      LocalAddr;
     30   DWORD         dwLocalScopeId;
     31   DWORD         dwLocalPort;
     32   IN6_ADDR      RemoteAddr;
     33   DWORD         dwRemoteScopeId;
     34   DWORD         dwRemotePort;
     35 } MIB_TCP6ROW, *PMIB_TCP6ROW;
     36 
     37 typedef struct _MIB_TCP6TABLE {
     38   DWORD       dwNumEntries;
     39   MIB_TCP6ROW table[ANY_SIZE];
     40 } MIB_TCP6TABLE, *PMIB_TCP6TABLE;
     41 
     42 typedef struct _MIB_TCP6ROW2 {
     43   IN6_ADDR                     LocalAddr;
     44   DWORD                        dwLocalScopeId;
     45   DWORD                        dwLocalPort;
     46   IN6_ADDR                     RemoteAddr;
     47   DWORD                        dwRemoteScopeId;
     48   DWORD                        dwRemotePort;
     49   MIB_TCP_STATE                State;
     50   DWORD                        dwOwningPid;
     51   TCP_CONNECTION_OFFLOAD_STATE dwOffloadState;
     52 } MIB_TCP6ROW2, *PMIB_TCP6ROW2;
     53 
     54 typedef struct _MIB_TCP6TABLE2 {
     55   DWORD        dwNumEntries;
     56   MIB_TCP6ROW2 table[ANY_SIZE];
     57 } MIB_TCP6TABLE2, *PMIB_TCP6TABLE2;
     58 
     59 typedef struct _MIB_TCPROW2 {
     60   DWORD                        dwState;
     61   DWORD                        dwLocalAddr;
     62   DWORD                        dwLocalPort;
     63   DWORD                        dwRemoteAddr;
     64   DWORD                        dwRemotePort;
     65   TCP_CONNECTION_OFFLOAD_STATE dwOffloadState;
     66 } MIB_TCPROW2, *PMIB_TCPROW2;
     67 
     68 typedef struct _MIB_TCPTABLE2 {
     69   DWORD       dwNumEntries;
     70   MIB_TCPROW2 table[ANY_SIZE];
     71 } MIB_TCPTABLE2, *PMIB_TCPTABLE2;
     72 
     73 #ifdef __cplusplus
     74 }
     75 #endif
     76 
     77 #endif /*(_WIN32_WINNT >= 0x0600)*/
     78 
     79 #endif /*_INC_TCPMIB*/
     80