diff options
Diffstat (limited to '')
-rw-r--r-- | private/ntos/tdi/tcpip/tcp/tcpdeliv.h | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/private/ntos/tdi/tcpip/tcp/tcpdeliv.h b/private/ntos/tdi/tcpip/tcp/tcpdeliv.h new file mode 100644 index 000000000..94fe73a7d --- /dev/null +++ b/private/ntos/tdi/tcpip/tcp/tcpdeliv.h @@ -0,0 +1,44 @@ +/********************************************************************/ +/** Microsoft LAN Manager **/ +/** Copyright(c) Microsoft Corp., 1990-1993 **/ +/********************************************************************/ +/* :ts=4 */ + +//** TCPDELIV.H - TCP data delivery definitions. +// +// This file contains the definitions for structures used by the data +// delivery code. +// + +extern void FreeRcvReq(struct TCPRcvReq *FreedReq); + +extern uint IndicateData(struct TCB *RcvTCB, uint RcvFlags, IPRcvBuf *InBuffer, + uint Size); +extern uint BufferData(struct TCB *RcvTCB, uint RcvFlags, IPRcvBuf *InBuffer, + uint Size); +extern uint PendData(struct TCB *RcvTCB, uint RcvFlags, IPRcvBuf *InBuffer, + uint Size); + +#ifdef VXD +extern void IndicatePendingData(struct TCB *RcvTCB, struct TCPRcvReq *RcvReq); +#else +extern void IndicatePendingData(struct TCB *RcvTCB, struct TCPRcvReq *RcvReq, + CTELockHandle TCBHandle); +#endif + +extern void HandleUrgent(struct TCB *RcvTCB, struct TCPRcvInfo *RcvInfo, + IPRcvBuf *RcvBuf, uint *Size); + +extern TDI_STATUS TdiReceive(PTDI_REQUEST Request, ushort *Flags, + uint *RcvLength, PNDIS_BUFFER Buffer); +extern IPRcvBuf *FreePartialRB(IPRcvBuf *RB, uint Size); +extern void PushData(struct TCB *PushTCB); + +EXTERNAL_LOCK(TCPRcvReqFreeLock) // Protects rcv req free list. + +#ifdef NT +extern SLIST_HEADER TCPRcvReqFree; +#endif + + + |