-/* $Id$
- *
+/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS kernel
* FILE: drivers/net/afd/include/afd.h
#ifndef _AFD_H
#define _AFD_H
-#include <ntddk.h>
#include <ntifs.h>
#include <ndk/obtypes.h>
-#include <ndk/obfuncs.h>
-#include <ndk/mmtypes.h>
-#include <ndk/mmfuncs.h>
#include <tdi.h>
-#include <tdikrnl.h>
-#include <tdiinfo.h>
-#include <string.h>
+#include <tcpioctl.h>
#define _WINBASE_
#define _WINDOWS_H
#define _INC_WINDOWS
#define MIN(x,y) (((x)<(y))?(x):(y))
#endif
-#define IOCTL_TCP_QUERY_INFORMATION_EX \
- CTL_CODE(FILE_DEVICE_NETWORK, 0, METHOD_NEITHER, FILE_ANY_ACCESS)
-
#define TL_INSTANCE 0
#define IP_MIB_STATS_ID 1
#define IP_MIB_ADDRTABLE_ENTRY_ID 0x102
-typedef struct IPSNMP_INFO {
- ULONG Forwarding;
- ULONG DefaultTTL;
- ULONG InReceives;
- ULONG InHdrErrors;
- ULONG InAddrErrors;
- ULONG ForwDatagrams;
- ULONG InUnknownProtos;
- ULONG InDiscards;
- ULONG InDelivers;
- ULONG OutRequests;
- ULONG RoutingDiscards;
- ULONG OutDiscards;
- ULONG OutNoRoutes;
- ULONG ReasmTimeout;
- ULONG ReasmReqds;
- ULONG ReasmOks;
- ULONG ReasmFails;
- ULONG FragOks;
- ULONG FragFails;
- ULONG FragCreates;
- ULONG NumIf;
- ULONG NumAddr;
- ULONG NumRoutes;
-} IPSNMP_INFO, *PIPSNMP_INFO;
+#define TAG_AFD_DATA_BUFFER 'BdfA'
+#define TAG_AFD_TRANSPORT_ADDRESS 'tdfA'
+#define TAG_AFD_SOCKET_CONTEXT 'XdfA'
+#define TAG_AFD_CONNECT_DATA 'cdfA'
+#define TAG_AFD_DISCONNECT_DATA 'ddfA'
+
+#define TAG_AFD_CONNECT_OPTIONS 'ocfA'
+#define TAG_AFD_DISCONNECT_OPTIONS 'odfA'
+#define TAG_AFD_ACCEPT_QUEUE 'qafA'
+#define TAG_AFD_POLL_HANDLE 'hpfA'
+#define TAG_AFD_FCB 'cffA'
+#define TAG_AFD_ACTIVE_POLL 'pafA'
+#define TAG_AFD_EA_INFO 'aefA'
+#define TAG_AFD_STORED_DATAGRAM 'gsfA'
+#define TAG_AFD_SNMP_ADDRESS_INFO 'asfA'
+#define TAG_AFD_TDI_CONNECTION_INFORMATION 'cTfA'
+#define TAG_AFD_WSA_BUFFER 'bWfA'
typedef struct IPADDR_ENTRY {
ULONG Addr;
typedef struct _AFD_IN_FLIGHT_REQUEST {
PIRP InFlightRequest;
- IO_STATUS_BLOCK Iosb;
PTDI_CONNECTION_INFORMATION ConnectionCallInfo;
PTDI_CONNECTION_INFORMATION ConnectionReturnInfo;
} AFD_IN_FLIGHT_REQUEST, *PAFD_IN_FLIGHT_REQUEST;
PVOID Context;
DWORD PollState;
NTSTATUS PollStatus[FD_MAX_EVENTS];
+ NTSTATUS LastReceiveStatus;
UINT ContextSize;
PVOID ConnectData;
UINT FilledConnectData;
VOID OskitDumpBuffer( PCHAR Buffer, UINT Len );
VOID DestroySocket( PAFD_FCB FCB );
-VOID NTAPI AfdCancelHandler(PDEVICE_OBJECT DeviceObject,
- PIRP Irp);
+DRIVER_CANCEL AfdCancelHandler;
VOID RetryDisconnectCompletion(PAFD_FCB FCB);
BOOLEAN CheckUnlockExtraBuffers(PAFD_FCB FCB, PIO_STACK_LOCATION IrpSp);
/* read.c */
-NTSTATUS NTAPI ReceiveComplete
-( PDEVICE_OBJECT DeviceObject,
- PIRP Irp,
- PVOID Context );
+IO_COMPLETION_ROUTINE ReceiveComplete;
-NTSTATUS NTAPI PacketSocketRecvComplete
-( PDEVICE_OBJECT DeviceObject,
- PIRP Irp,
- PVOID Context );
+IO_COMPLETION_ROUTINE PacketSocketRecvComplete;
NTSTATUS NTAPI
-AfdConnectedSocketReadData(PDEVICE_OBJECT DeviceObject, PIRP Irp,
- PIO_STACK_LOCATION IrpSp, BOOLEAN Short);
+AfdConnectedSocketReadData(PDEVICE_OBJECT DeviceObject, PIRP Irp, PIO_STACK_LOCATION IrpSp, BOOLEAN Short);
NTSTATUS NTAPI
AfdPacketSocketReadData(PDEVICE_OBJECT DeviceObject, PIRP Irp,
PIO_STACK_LOCATION IrpSp );
PFILE_OBJECT ConnectionObject,
PTDI_CONNECTION_INFORMATION *RequestConnectionInfo,
PTDI_CONNECTION_INFORMATION *ReturnConnectionInfo,
- PIO_STATUS_BLOCK Iosb,
PIO_COMPLETION_ROUTINE CompletionRoutine,
PVOID CompletionContext);
USHORT Flags,
PCHAR Buffer,
UINT BufferLength,
- PIO_STATUS_BLOCK Iosb,
PIO_COMPLETION_ROUTINE CompletionRoutine,
PVOID CompletionContext);
USHORT Flags,
PCHAR Buffer,
UINT BufferLength,
- PIO_STATUS_BLOCK Iosb,
PIO_COMPLETION_ROUTINE CompletionRoutine,
PVOID CompletionContext);
PCHAR Buffer,
UINT BufferLength,
PTDI_CONNECTION_INFORMATION From,
- PIO_STATUS_BLOCK Iosb,
PIO_COMPLETION_ROUTINE CompletionRoutine,
PVOID CompletionContext);
PCHAR Buffer,
UINT BufferLength,
PTDI_CONNECTION_INFORMATION To,
- PIO_STATUS_BLOCK Iosb,
PIO_COMPLETION_ROUTINE CompletionRoutine,
PVOID CompletionContext);
AfdPacketSocketWriteData(PDEVICE_OBJECT DeviceObject, PIRP Irp,
PIO_STACK_LOCATION IrpSp);
-#endif/*_AFD_H*/
+#endif /* _AFD_H */