17 FCB->LocalAddress->Address[0].AddressType));
19 if( !
FCB->TdiDeviceName.Length || !
FCB->TdiDeviceName.Buffer ) {
23 if( !
FCB->LocalAddress ) {
31 &
FCB->AddressFile.Handle,
32 &
FCB->AddressFile.Object );
50 if (!
FCB->Recv.Window)
57 FCB->AddressFile.Object,
93 if (
FCB->LocalAddress)
100 if(
FCB->LocalAddress )
IO_COMPLETION_ROUTINE PacketSocketRecvComplete
#define SOCKET_STATE_BOUND
#define TAG_AFD_DATA_BUFFER
#define TAG_AFD_TRANSPORT_ADDRESS
#define NT_SUCCESS(StatCode)
_In_ PIO_STACK_LOCATION IrpSp
NTSTATUS WarmSocketForBind(PAFD_FCB FCB, ULONG ShareType)
NTSTATUS NTAPI AfdBindSocket(PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp)
PVOID LockRequest(PIRP Irp, PIO_STACK_LOCATION IrpSp, BOOLEAN Output, KPROCESSOR_MODE *LockMode)
NTSTATUS LostSocket(PIRP Irp)
NTSTATUS NTAPI UnlockAndMaybeComplete(PAFD_FCB FCB, NTSTATUS Status, PIRP Irp, UINT Information)
BOOLEAN SocketAcquireStateLock(PAFD_FCB FCB)
NTSTATUS TdiQueryMaxDatagramLength(PFILE_OBJECT FileObject, PUINT MaxDatagramLength)
NTSTATUS TdiReceiveDatagram(PIRP *Irp, PFILE_OBJECT TransportObject, USHORT Flags, PCHAR Buffer, UINT BufferLength, PTDI_CONNECTION_INFORMATION Addr, PIO_COMPLETION_ROUTINE CompletionRoutine, PVOID CompletionContext)
NTSTATUS TdiOpenAddressFile(PUNICODE_STRING DeviceName, PTRANSPORT_ADDRESS Name, ULONG ShareType, PHANDLE AddressHandle, PFILE_OBJECT *AddressObject)
#define AFD_DbgPrint(_t_, _x_)
#define ExAllocatePoolWithTag(hernya, size, tag)
POBJECT_TYPE IoFileObjectType
#define ExFreePoolWithTag(_P, _T)
#define UNREFERENCED_PARAMETER(P)
NTSTATUS NTAPI ObOpenObjectByPointer(IN PVOID Object, IN ULONG HandleAttributes, IN PACCESS_STATE PassedAccessState, IN ACCESS_MASK DesiredAccess, IN POBJECT_TYPE ObjectType, IN KPROCESSOR_MODE AccessMode, OUT PHANDLE Handle)
#define AFD_ENDPOINT_CONNECTIONLESS
TRANSPORT_ADDRESS Address
NTSTATUS TdiBuildConnectionInfo(PTDI_CONNECTION_INFORMATION *ConnectionInfo, PTRANSPORT_ADDRESS Address)
PTRANSPORT_ADDRESS TaCopyTransportAddress(PTRANSPORT_ADDRESS OtherAddress)
#define STATUS_INVALID_PARAMETER
#define STATUS_NO_SUCH_DEVICE
_In_ PDEVICE_OBJECT DeviceObject
_In_ WDFREQUEST _In_ WDFFILEOBJECT FileObject