Note
Access to this page requires authorization. You can try signing in or .
Access to this page requires authorization. You can try .
MIB_TCPROW_OWNER_PID structure (tcpmib.h)
The MIB_TCPROW_OWNER_PID structure contains information that describes an IPv4 TCP connection with IPv4 addresses, ports used by the TCP connection, and the specific process ID (PID) associated with connection.
Syntax
typedef struct _MIB_TCPROW_OWNER_PID {
DWORD dwState;
DWORD dwLocalAddr;
DWORD dwLocalPort;
DWORD dwRemoteAddr;
DWORD dwRemotePort;
DWORD dwOwningPid;
} MIB_TCPROW_OWNER_PID, *PMIB_TCPROW_OWNER_PID;
Members
dwState
Type: DWORD
The state of the TCP connection. This member can be one of the values defined in the Iprtrmib.h header file.
On the Windows SDK released for Windows Vista and later, the organization of header files has changed. This member can be one of the values from the MIB_TCP_STATE enumeration defined in the Tcpmib.h header file, not in the Iprtrmib.h header file. Note that the Tcpmib.h header file is automatically included in Iprtrmib.h, which is automatically included in the Iphlpapi.h header file. The Tcpmib.h and Iprtrmib.h header files should never be used directly.
| Value | Meaning |
|---|---|
|
The TCP connection is in the CLOSED state that represents no connection state at all. |
|
The TCP connection is in the LISTEN state waiting for a connection request from any remote TCP and port. |
|
The TCP connection is in the SYN-SENT state waiting for a matching connection request after having sent a connection request (SYN packet). |
|
The TCP connection is in the SYN-RECEIVED state waiting for a confirming connection request acknowledgment after having both received and sent a connection request (SYN packet). |
|
The TCP connection is in the ESTABLISHED state that represents an open connection, data received can be delivered to the user. This is the normal state for the data transfer phase of the TCP connection. |
|
The TCP connection is FIN-WAIT-1 state waiting for a connection termination request from the remote TCP, or an acknowledgment of the connection termination request previously sent. |
|
The TCP connection is FIN-WAIT-2 state waiting for a connection termination request from the remote TCP. |
|
The TCP connection is in the CLOSE-WAIT state waiting for a connection termination request from the local user. |
|
The TCP connection is in the CLOSING state waiting for a connection termination request acknowledgment from the remote TCP. |
|
The TCP connection is in the LAST-ACK state waiting for an acknowledgment of the connection termination request previously sent to the remote TCP (which includes an acknowledgment of its connection termination request). |
|
The TCP connection is in the TIME-WAIT state waiting for enough time to pass to be sure the remote TCP received the acknowledgment of its connection termination request. |
|
The TCP connection is in the delete TCB state that represents the deletion of the Transmission Control Block (TCB), a data structure used to maintain information on each TCP entry. |
dwLocalAddr
Type: DWORD
The local IPv4 address for the TCP connection on the local computer. A value of zero indicates the listener can accept a connection on any interface.
dwLocalPort
Type: DWORD
The local port number in network byte order for the TCP connection on the local computer.
dwRemoteAddr
Type: DWORD
The IPv4 address for the TCP connection on the remote computer. When the dwState member is MIB_TCP_STATE_LISTEN, this value has no meaning.
dwRemotePort
Type: DWORD
The remote port number in network byte order for the TCP connection on the remote computer. When the dwState member is MIB_TCP_STATE_LISTEN, this member has no meaning.
dwOwningPid
Type: DWORD
The PID of the process that issued a context bind for this TCP connection.
Remarks
The MIB_TCPROW_OWNER_PID structure is returned by a call to GetExtendedTcpTable with the TableClass parameter set to TCP_TABLE_OWNER_PID_LISTENER, TCP_TABLE_OWNER_PID_CONNECTIONS, or TCP_TABLE_OWNER_PID_ALL from the TCP_TABLE_CLASS enumeration and the ulAf parameter set to AF_INET4.
The dwState member indicates the state of the TCP entry in a TCP state diagram. A TCP connection progresses through a series of states during its lifetime. The states are: LISTEN, SYN-SENT, SYN-RECEIVED, ESTABLISHED, FIN-WAIT-1, FIN-WAIT-2, CLOSE-WAIT, CLOSING, LAST-ACK, TIME-WAIT, and the fictional state CLOSED. The CLOSED state is fictional because it represents the state when there is no Transmission Control Block, and therefore, no connection. The TCP protocol is described in RFC 793. For more information, see http://www.ietf.org/rfc/rfc793.txt.
The dwLocalPort, and dwRemotePort members are in network byte order. In order to use the dwLocalPort or dwRemotePort members, the ntohs or inet_ntoa functions in Windows Sockets or similar functions may be needed. The dwLocalAddr and dwRemoteAddr members are stored as a DWORD in the same format as the in_addr structure. In order to use the dwLocalAddr or dwRemoteAddr members, the ntohl or inet_ntoa functions in Windows Sockets or similar functions may be needed. On Windows Vista and later, the RtlIpv4AddressToString or RtlIpv4AddressToStringEx functions may be used to convert the IPv4 address in the dwLocalAddr or dwRemoteAddr members to a string without loading the Windows Sockets DLL.
On the Windows SDK released for Windows Vista and later, the organization of header files has changed. This structure is defined in the Tcpmib.h header file, not in the Iprtrmib.h header file. Note that the Tcpmib.h header file is automatically included in Iprtrmib.h, which is automatically included in the Iphlpapi.h header file. The Tcpmib.h and Iprtrmib.h header files should never be used directly.
Requirements
| Requirement | Value |
|---|---|
| Minimum supported client | Windows Vista, Windows XP with SP2 [desktop apps only] |
| Minimum supported server | Windows Server 2008, Windows Server 2003 with SP1 [desktop apps only] |
| Header | tcpmib.h (include Iphlpapi.h) |
See also
Feedback
Was this page helpful?
