26 IN LONG DisconnectDataLength,
28 IN LONG DisconnectInformationLength,
48 PAFDFCB
FCB = (PAFDFCB)TdiEventContext;
79 Buffer->Buffer.len = BytesAvailable;
80 Buffer->Buffer.buf = ReceiveBuffer;
87 TryToSatisfyRecvRequest(
FCB,
TRUE );
91 *BytesTaken = BytesAvailable;
132 IN LONG SourceAddressLength,
143 PAFDFCB
FCB = (PAFDFCB)TdiEventContext;
144 PAFD_READ_REQUEST ReadRequest;
179 Buffer->Buffer.len = BytesAvailable;
180 Buffer->Buffer.buf = ReceiveBuffer;
185 &
FCB->ReceiveQueueLock);
196 ReadRequest->RecvFromRequest->Buffers,
197 ReadRequest->RecvFromRequest->BufferCount,
200 ReadRequest->RecvFromReply->NumberOfBytesRecvd =
Count;
201 ReadRequest->RecvFromReply->Status =
NO_ERROR;
203 ReadRequest->Irp->IoStatus.Information = 0;
204 ReadRequest->Irp->IoStatus.Status =
Status;
212 *BytesTaken = BytesAvailable;
235 switch (
FCB->SocketType) {
285 switch (
FCB->SocketType) {
#define TAG_AFD_DATA_BUFFER
_In_ PFCB _In_ LONGLONG StartingOffset
#define NT_SUCCESS(StatCode)
NTSTATUS ClientEventChainedReceive(IN PVOID TdiEventContext, IN CONNECTION_CONTEXT ConnectionContext, IN ULONG ReceiveFlags, IN ULONG ReceiveLength, IN ULONG StartingOffset, IN PMDL Tsdu, IN PVOID TsduDescriptor)
NTSTATUS AfdDeregisterEventHandlers(PAFDFCB FCB)
NTSTATUS AfdEventError(IN PVOID TdiEventContext, IN NTSTATUS Status)
NTSTATUS AfdRegisterEventHandlers(PAFDFCB FCB)
NTSTATUS AfdEventDisconnect(IN PVOID TdiEventContext, IN CONNECTION_CONTEXT ConnectionContext, IN LONG DisconnectDataLength, IN PVOID DisconnectData, IN LONG DisconnectInformationLength, IN PVOID DisconnectInformation, IN ULONG DisconnectFlags)
NTSTATUS AfdEventReceiveDatagramHandler(IN PVOID TdiEventContext, IN LONG SourceAddressLength, IN PVOID SourceAddress, IN LONG OptionsLength, IN PVOID Options, IN ULONG ReceiveDatagramFlags, IN ULONG BytesIndicated, IN ULONG BytesAvailable, OUT ULONG *BytesTaken, IN PVOID Tsdu, OUT PIRP *IoRequestPacket)
NTSTATUS AfdEventReceive(IN PVOID TdiEventContext, IN CONNECTION_CONTEXT ConnectionContext, IN ULONG ReceiveFlags, IN ULONG BytesIndicated, IN ULONG BytesAvailable, OUT ULONG *BytesTaken, IN PVOID Tsdu, OUT PIRP *IoRequestPacket)
TDI_STATUS ClientEventReceiveExpedited(IN PVOID TdiEventContext, IN CONNECTION_CONTEXT ConnectionContext, IN ULONG ReceiveFlags, IN ULONG BytesIndicated, IN ULONG BytesAvailable, OUT ULONG *BytesTaken, IN PVOID Tsdu, OUT PIRP *IoRequestPacket)
NTSTATUS TdiSetEventHandler(PFILE_OBJECT FileObject, LONG EventType, PVOID Handler, PVOID Context)
#define AFD_DbgPrint(_t_, _x_)
#define IO_NETWORK_INCREMENT
VOID CompleteIrp(IN PIRP Irp, IN NTSTATUS Status, IN ULONG_PTR Information)
#define InsertTailList(ListHead, Entry)
#define ExAllocatePoolWithTag(hernya, size, tag)
#define IsListEmpty(ListHead)
#define KeReleaseSpinLock(sl, irql)
#define KeAcquireSpinLock(sl, irql)
#define RemoveHeadList(ListHead)
PLIST_ENTRY NTAPI ExInterlockedInsertTailList(IN OUT PLIST_ENTRY ListHead, IN OUT PLIST_ENTRY ListEntry, IN OUT PKSPIN_LOCK Lock)
#define ExFreePoolWithTag(_P, _T)
#define IoCompleteRequest
base of all file and directory entries
#define TDI_EVENT_RECEIVE_EXPEDITED
#define TDI_EVENT_CHAINED_RECEIVE
#define TDI_EVENT_DISCONNECT
#define TDI_EVENT_RECEIVE
#define TDI_EVENT_RECEIVE_DATAGRAM
#define RtlCopyMemory(Destination, Source, Length)
#define CONTAINING_RECORD(address, type, field)
#define STATUS_INSUFFICIENT_RESOURCES
_In_ PWDFDEVICE_INIT _In_ PWDF_REMOVE_LOCK_OPTIONS Options
_Must_inspect_result_ typedef _In_ PHYSICAL_ADDRESS SourceAddress
_Requires_lock_held_ Interrupt _Releases_lock_ Interrupt _In_ _IRQL_restores_ KIRQL OldIrql