ReactOS  0.4.15-dev-3316-g067ca88
titypes.h File Reference
#include <ip.h>
Include dependency graph for titypes.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  _DATAGRAM_RECEIVE_REQUEST
 
struct  _DATAGRAM_SEND_REQUEST
 
struct  _ADDRESS_FILE
 
struct  _AF_SEARCH
 
struct  _TCP_RECEIVE_REQUEST
 
struct  _TCP_SEGMENT
 
struct  _TDI_BUCKET
 
struct  _CONNECTION_ENDPOINT
 
struct  _CONTROL_CHANNEL
 
struct  _TRANSPORT_CONTEXT
 
struct  _TI_QUERY_CONTEXT
 

Macros

#define ReferenceObject(Object)
 
#define DereferenceObject(Object)
 
#define LockObject(Object)
 
#define UnlockObject(Object)
 
#define ASSERT_TCPIP_OBJECT_LOCKED(Object)   ASSERT(ExIsResourceAcquiredExclusiveLite(&(Object)->Resource))
 

Typedefs

typedef NTSTATUS(* DATAGRAM_SEND_ROUTINE) (struct _ADDRESS_FILE *AddrFile, PTDI_CONNECTION_INFORMATION ConnInfo, PCHAR Buffer, ULONG DataSize, PULONG DataUsed)
 
typedef VOID(* DATAGRAM_COMPLETION_ROUTINE) (PVOID Context, NDIS_STATUS Status, ULONG Count)
 
typedef DATAGRAM_COMPLETION_ROUTINE PDATAGRAM_COMPLETION_ROUTINE
 
typedef struct _DATAGRAM_RECEIVE_REQUEST DATAGRAM_RECEIVE_REQUEST
 
typedef struct _DATAGRAM_RECEIVE_REQUESTPDATAGRAM_RECEIVE_REQUEST
 
typedef NTSTATUS(* DATAGRAM_BUILD_ROUTINE) (PVOID Context, PIP_ADDRESS LocalAddress, USHORT LocalPort, PIP_PACKET *IPPacket)
 
typedef struct _DATAGRAM_SEND_REQUEST DATAGRAM_SEND_REQUEST
 
typedef struct _DATAGRAM_SEND_REQUESTPDATAGRAM_SEND_REQUEST
 
typedef struct _ADDRESS_FILE ADDRESS_FILE
 
typedef struct _ADDRESS_FILEPADDRESS_FILE
 
typedef struct _AF_SEARCH AF_SEARCH
 
typedef struct _AF_SEARCHPAF_SEARCH
 
typedef struct _TCP_RECEIVE_REQUEST TCP_RECEIVE_REQUEST
 
typedef struct _TCP_RECEIVE_REQUESTPTCP_RECEIVE_REQUEST
 
typedef enum CONNECTION_STATEPCONNECTION_STATE
 
typedef struct _TCP_SEGMENT TCP_SEGMENT
 
typedef struct _TCP_SEGMENTPTCP_SEGMENT
 
typedef struct _TDI_BUCKET TDI_BUCKET
 
typedef struct _TDI_BUCKETPTDI_BUCKET
 
typedef struct _CONNECTION_ENDPOINT CONNECTION_ENDPOINT
 
typedef struct _CONNECTION_ENDPOINTPCONNECTION_ENDPOINT
 
typedef struct _CONTROL_CHANNEL CONTROL_CHANNEL
 
typedef struct _CONTROL_CHANNELPCONTROL_CHANNEL
 
typedef struct _TRANSPORT_CONTEXT TRANSPORT_CONTEXT
 
typedef struct _TRANSPORT_CONTEXTPTRANSPORT_CONTEXT
 
typedef struct _TI_QUERY_CONTEXT TI_QUERY_CONTEXT
 
typedef struct _TI_QUERY_CONTEXTPTI_QUERY_CONTEXT
 

Enumerations

enum  CONNECTION_STATE {
  ctListen = 0, ctSynSent, ctSynReceived, ctEstablished,
  ctFinWait1, ctFinWait2, ctCloseWait, ctClosing,
  ctLastAck, ctTimeWait, ctClosed
}
 

Macro Definition Documentation

◆ ASSERT_TCPIP_OBJECT_LOCKED

#define ASSERT_TCPIP_OBJECT_LOCKED (   Object)    ASSERT(ExIsResourceAcquiredExclusiveLite(&(Object)->Resource))

Definition at line 51 of file titypes.h.

◆ DereferenceObject

#define DereferenceObject (   Object)
Value:
{ \
ASSERT((Object)->RefCount); \
if (InterlockedDecrement(&((Object)->RefCount)) == 0) \
(((Object)->Free)(Object)); \
}
_In_opt_ PALLOCATE_FUNCTION _In_opt_ PFREE_FUNCTION Free
Definition: exfuncs.h:814
#define InterlockedDecrement
Definition: armddk.h:52
_Must_inspect_result_ _In_ WDFCOLLECTION _In_ WDFOBJECT Object

Definition at line 24 of file titypes.h.

◆ LockObject

#define LockObject (   Object)
Value:
do \
{ \
ReferenceObject(Object); \
KeEnterCriticalRegion(); \
ExAcquireResourceExclusiveLite(&(Object)->Resource, TRUE); \
} while(0)
#define TRUE
Definition: types.h:120
_Acquires_exclusive_lock_ Resource _Acquires_shared_lock_ Resource _Inout_ PERESOURCE Resource
Definition: cdprocs.h:843
_Must_inspect_result_ _In_ WDFCOLLECTION _In_ WDFOBJECT Object

Definition at line 34 of file titypes.h.

◆ ReferenceObject

#define ReferenceObject (   Object)
Value:
{ \
ASSERT((Object)->RefCount); \
InterlockedIncrement(&((Object)->RefCount)); \
}
_Must_inspect_result_ _In_ WDFCOLLECTION _In_ WDFOBJECT Object

Definition at line 14 of file titypes.h.

◆ UnlockObject

#define UnlockObject (   Object)
Value:
do \
{ \
ExReleaseResourceLite(&(Object)->Resource); \
KeLeaveCriticalRegion(); \
DereferenceObject(Object); \
} while(0)
_Acquires_exclusive_lock_ Resource _Acquires_shared_lock_ Resource _Inout_ PERESOURCE Resource
Definition: cdprocs.h:843
_Must_inspect_result_ _In_ WDFCOLLECTION _In_ WDFOBJECT Object

Definition at line 44 of file titypes.h.

Typedef Documentation

◆ ADDRESS_FILE

◆ AF_SEARCH

◆ CONNECTION_ENDPOINT

◆ CONTROL_CHANNEL

◆ DATAGRAM_BUILD_ROUTINE

typedef NTSTATUS(* DATAGRAM_BUILD_ROUTINE) (PVOID Context, PIP_ADDRESS LocalAddress, USHORT LocalPort, PIP_PACKET *IPPacket)

Definition at line 92 of file titypes.h.

◆ DATAGRAM_COMPLETION_ROUTINE

typedef VOID(* DATAGRAM_COMPLETION_ROUTINE) (PVOID Context, NDIS_STATUS Status, ULONG Count)

Definition at line 69 of file titypes.h.

◆ DATAGRAM_RECEIVE_REQUEST

◆ DATAGRAM_SEND_REQUEST

◆ DATAGRAM_SEND_ROUTINE

typedef NTSTATUS(* DATAGRAM_SEND_ROUTINE) (struct _ADDRESS_FILE *AddrFile, PTDI_CONNECTION_INFORMATION ConnInfo, PCHAR Buffer, ULONG DataSize, PULONG DataUsed)

Definition at line 61 of file titypes.h.

◆ PADDRESS_FILE

◆ PAF_SEARCH

◆ PCONNECTION_ENDPOINT

◆ PCONNECTION_STATE

◆ PCONTROL_CHANNEL

◆ PDATAGRAM_COMPLETION_ROUTINE

◆ PDATAGRAM_RECEIVE_REQUEST

◆ PDATAGRAM_SEND_REQUEST

◆ PTCP_RECEIVE_REQUEST

◆ PTCP_SEGMENT

◆ PTDI_BUCKET

◆ PTI_QUERY_CONTEXT

◆ PTRANSPORT_CONTEXT

◆ TCP_RECEIVE_REQUEST

◆ TCP_SEGMENT

◆ TDI_BUCKET

◆ TI_QUERY_CONTEXT

◆ TRANSPORT_CONTEXT

Enumeration Type Documentation

◆ CONNECTION_STATE

Enumerator
ctListen 
ctSynSent 
ctSynReceived 
ctEstablished 
ctFinWait1 
ctFinWait2 
ctCloseWait 
ctClosing 
ctLastAck 
ctTimeWait 
ctClosed 

Definition at line 203 of file titypes.h.

203  {
204  ctListen = 0, /* Waiting for incoming connection requests */
205  ctSynSent, /* Waiting for matching connection request */
206  ctSynReceived, /* Waiting for connection request acknowledgment */
207  ctEstablished, /* Connection is open for data transfer */
208  ctFinWait1, /* Waiting for termination request or ack. for same */
209  ctFinWait2, /* Waiting for termination request from remote TCP */
210  ctCloseWait, /* Waiting for termination request from local user */
211  ctClosing, /* Waiting for termination ack. from remote TCP */
212  ctLastAck, /* Waiting for termination request ack. from remote TCP */
213  ctTimeWait, /* Waiting for enough time to pass to be sure the remote TCP
214  received the ack. of its connection termination request */
215  ctClosed /* Represents a closed connection */
enum CONNECTION_STATE * PCONNECTION_STATE
CONNECTION_STATE
Definition: titypes.h:203