| /** | |
| * This file has no copyright assigned and is placed in the Public Domain. | |
| * This file is part of the mingw-w64 runtime package. | |
| * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| */ | |
| #ifndef _INC_TCPMIB | |
| #define _INC_TCPMIB | |
| #ifndef ANY_SIZE | |
| #define ANY_SIZE 1 | |
| #endif | |
| #if (_WIN32_WINNT >= 0x0600) | |
| #ifdef __cplusplus | |
| extern "C" { | |
| #endif | |
| /* As I read msdn on Vista the defines above were moved into | |
| typedef enum { MIB_..., } MIB_TCP_STATE; | |
| We simply typedef it to int. */ | |
| typedef int MIB_TCP_STATE; | |
| typedef enum _TCP_CONNECTION_OFFLOAD_STATE { | |
| TcpConnectionOffloadStateInHost = 0, | |
| TcpConnectionOffloadStateOffloading = 1, | |
| TcpConnectionOffloadStateOffloaded = 2, | |
| TcpConnectionOffloadStateUploading = 3, | |
| TcpConnectionOffloadStateMax = 4 | |
| } TCP_CONNECTION_OFFLOAD_STATE; | |
| typedef struct _MIB_TCP6ROW { | |
| MIB_TCP_STATE State; | |
| IN6_ADDR LocalAddr; | |
| DWORD dwLocalScopeId; | |
| DWORD dwLocalPort; | |
| IN6_ADDR RemoteAddr; | |
| DWORD dwRemoteScopeId; | |
| DWORD dwRemotePort; | |
| } MIB_TCP6ROW, *PMIB_TCP6ROW; | |
| typedef struct _MIB_TCP6TABLE { | |
| DWORD dwNumEntries; | |
| MIB_TCP6ROW table[ANY_SIZE]; | |
| } MIB_TCP6TABLE, *PMIB_TCP6TABLE; | |
| typedef struct _MIB_TCP6ROW2 { | |
| IN6_ADDR LocalAddr; | |
| DWORD dwLocalScopeId; | |
| DWORD dwLocalPort; | |
| IN6_ADDR RemoteAddr; | |
| DWORD dwRemoteScopeId; | |
| DWORD dwRemotePort; | |
| MIB_TCP_STATE State; | |
| DWORD dwOwningPid; | |
| TCP_CONNECTION_OFFLOAD_STATE dwOffloadState; | |
| } MIB_TCP6ROW2, *PMIB_TCP6ROW2; | |
| typedef struct _MIB_TCP6TABLE2 { | |
| DWORD dwNumEntries; | |
| MIB_TCP6ROW2 table[ANY_SIZE]; | |
| } MIB_TCP6TABLE2, *PMIB_TCP6TABLE2; | |
| typedef struct _MIB_TCPROW2 { | |
| DWORD dwState; | |
| DWORD dwLocalAddr; | |
| DWORD dwLocalPort; | |
| DWORD dwRemoteAddr; | |
| DWORD dwRemotePort; | |
| DWORD dwOwningPid; | |
| TCP_CONNECTION_OFFLOAD_STATE dwOffloadState; | |
| } MIB_TCPROW2, *PMIB_TCPROW2; | |
| typedef struct _MIB_TCPTABLE2 { | |
| DWORD dwNumEntries; | |
| MIB_TCPROW2 table[ANY_SIZE]; | |
| } MIB_TCPTABLE2, *PMIB_TCPTABLE2; | |
| #ifdef __cplusplus | |
| } | |
| #endif | |
| #endif /*(_WIN32_WINNT >= 0x0600)*/ | |
| #endif /*_INC_TCPMIB*/ |