- Build AFD, TCPIP and TDI with w32api headers.
authorFilip Navara <filip.navara@gmail.com>
Tue, 2 Mar 2004 18:18:15 +0000 (18:18 +0000)
committerFilip Navara <filip.navara@gmail.com>
Tue, 2 Mar 2004 18:18:15 +0000 (18:18 +0000)
- Removed the old TDI headers from include/net.

svn path=/trunk/; revision=8508

32 files changed:
reactos/drivers/net/afd/afd/opnclose.c
reactos/drivers/net/afd/afd/tdi.c
reactos/drivers/net/afd/include/afd.h
reactos/drivers/net/afd/makefile
reactos/drivers/net/ndis/include/ndissys.h
reactos/drivers/net/ndis/ndis/50gone.c
reactos/drivers/net/ndis/ndis/main.c
reactos/drivers/net/tcpip/datalink/lan.c
reactos/drivers/net/tcpip/include/address.h
reactos/drivers/net/tcpip/include/info.h
reactos/drivers/net/tcpip/include/ip.h
reactos/drivers/net/tcpip/include/tcpip.h
reactos/drivers/net/tcpip/makefile
reactos/drivers/net/tcpip/tcpip/address.c
reactos/drivers/net/tcpip/tcpip/dispatch.c
reactos/drivers/net/tcpip/tcpip/routines.c
reactos/drivers/net/tdi/tdi/dereg.c
reactos/drivers/net/tdi/tdi/handler.c
reactos/drivers/net/tdi/tdi/stubs.c
reactos/include/net/miniport.h [deleted file]
reactos/include/net/ndis.h
reactos/include/net/netevent.h [deleted file]
reactos/include/net/netpnp.h [deleted file]
reactos/include/net/ntddtdi.h [deleted file]
reactos/include/net/tdi.h [deleted file]
reactos/include/net/tdiinfo.h [deleted file]
reactos/include/net/tdikrnl.h [deleted file]
reactos/include/net/tdistat.h [deleted file]
reactos/include/tcpmisc.h [new file with mode: 0644]
reactos/lib/iphlpapi/ifenum_reactos.c
reactos/lib/iphlpapi/iphlpapi_private.h
reactos/lib/msafd/include/msafd.h

index 5752736..f3bb929 100644 (file)
@@ -143,8 +143,13 @@ AfdCreate(
             FCB->HelperContext      = SocketInfo->HelperContext;
             FCB->NotificationEvents = SocketInfo->NotificationEvents;
 
-            if (RtlCreateUnicodeString(&FCB->TdiDeviceName, SocketInfo->TdiDeviceName.Buffer)) {
+            FCB->TdiDeviceName.Length = 0;
+            FCB->TdiDeviceName.MaximumLength = SocketInfo->TdiDeviceName.MaximumLength;
+            FCB->TdiDeviceName.Buffer = ExAllocatePool(
+                NonPagedPool, 
+                FCB->TdiDeviceName.MaximumLength);
 
+            if (FCB->TdiDeviceName.Buffer) {
                 RtlCopyUnicodeString(&FCB->TdiDeviceName, &SocketInfo->TdiDeviceName);
 
                 AFD_DbgPrint(MAX_TRACE, ("TDI device name is (%wZ).\n", &FCB->TdiDeviceName));
index 6b69bf9..ad5602c 100644 (file)
@@ -585,6 +585,54 @@ NTSTATUS TdiQueryDeviceControl(
 }
 
 
+NTSTATUS TdiQueryInformation(
+    PFILE_OBJECT FileObject,
+    LONG QueryType,
+    PMDL MdlBuffer)
+/*
+ * FUNCTION: Query for information
+ * ARGUMENTS:
+ *     FileObject   = Pointer to file object
+ *     QueryType    = Query type
+ *     MdlBuffer    = Pointer to MDL buffer specific for query type
+ * RETURNS:
+ *     Status of operation
+ */
+{
+    PDEVICE_OBJECT DeviceObject;
+    IO_STATUS_BLOCK Iosb;
+    NTSTATUS Status;
+    KEVENT Event;
+    PIRP Irp;
+
+    DeviceObject = IoGetRelatedDeviceObject(FileObject);
+
+    KeInitializeEvent(&Event, NotificationEvent, FALSE);
+
+    Irp = TdiBuildInternalDeviceControlIrp(IOCTL_TCP_QUERY_INFORMATION, /* Sub function */
+                                           DeviceObject,                /* Device object */
+                                           ConnectionObject,            /* File object */
+                                           &Event,                      /* Event */
+                                           &Iosb);                      /* Status */
+    if (!Irp) {
+      return STATUS_INSUFFICIENT_RESOURCES;
+    }
+
+    TdiBuildQueryInformation(
+      Irp,
+      DeviceObject,
+      FileObject,
+      NULL,
+      NULL,
+      QueryType,
+      MdlBuffer);
+    
+    Status = TdiCall(Irp, DeviceObject, &Event, &Iosb);
+
+    return Status;
+}
+
+
 NTSTATUS TdiQueryInformationEx(
     PFILE_OBJECT FileObject,
     ULONG Entity,
index b685487..3c1fcb3 100644 (file)
 #include <winsock2.h>
 #include <ddk/ntddk.h>
 #include <ddk/ntifs.h>
-#include <net/tdikrnl.h>
-#include <net/tdiinfo.h>
+#include <ddk/tdiinfo.h>
+#include <ddk/tdikrnl.h>
 #include <afd/shared.h>
 #include <debug.h>
 
+#define        IP_MIB_STATS_ID                         1
+#define        IP_MIB_ADDRTABLE_ENTRY_ID               0x102
+
 /* Forward declarations */
 struct _AFDFCB;
 
index ee35ce2..5503939 100644 (file)
@@ -1,4 +1,4 @@
-# $Id: makefile,v 1.9 2004/02/07 04:50:44 arty Exp $
+# $Id: makefile,v 1.10 2004/03/02 18:18:13 navaraf Exp $
 
 PATH_TO_TOP = ../../..
 
@@ -6,7 +6,7 @@ TARGET_TYPE = driver
 
 TARGET_NAME = afd
 
-TARGET_CFLAGS = -I./include -DDBG -Werror -Wall
+TARGET_CFLAGS = -I./include -DDBG -D__USE_W32API -Werror -Wall
 
 TARGET_OBJECTS = \
   afd/afd.o \
index 4082871..80bd115 100644 (file)
 #include <ndis.h>
 #else /* _MSC_VER */
 #include <ddk/ntddk.h>
+#include <ddk/xfilter.h>
 #include <net/ndis.h>
 #endif /* _MSC_VER */
 
 #include <debug.h>
 
-
-#ifndef _MSC_VER
-/* FIXME: The following should be moved to ntddk.h */
-
-/*
- * ULONG MmGetMdlByteCount(
- *     IN  PMDL    Mdl)
- */
-#define MmGetMdlByteCount(Mdl)  \
-    ((Mdl)->ByteCount)
-
-#endif
-
-
 /* Exported functions */
 #ifdef _MSC_VER
 #define EXPORT __declspec(dllexport)
index 5952069..b9d27cf 100644 (file)
@@ -451,6 +451,8 @@ NdisSetupDmaTransfer(
 }
 
 
+#undef NdisUpdateSharedMemory
+
 /*
  * @unimplemented
  */
index ff0d94b..53d6ebf 100644 (file)
@@ -89,10 +89,7 @@ NdisWriteErrorLogEntry(
     IN  NDIS_HANDLE     NdisAdapterHandle,
     IN  NDIS_ERROR_CODE ErrorCode,
     IN  ULONG           NumberOfErrorValues,
-    IN  ULONG           ERROR_LOG_MAXIMUM_SIZE)
-/*  IN  ULONG           ...) 
- *  ERROR_LOG_MAXIMUM_SIZE = ... in MSDN
- */
+    ...) 
 /*
  * FUNCTION: Write a syslog error
  * ARGUMENTS:
index f418b08..24a84d0 100644 (file)
@@ -1037,9 +1037,9 @@ NTSTATUS LANRegisterProtocol(
     ProtChars.CloseAdapterCompleteHandler    = ProtocolCloseAdapterComplete;
     ProtChars.ResetCompleteHandler           = ProtocolResetComplete;
     ProtChars.RequestCompleteHandler         = ProtocolRequestComplete;
-    ProtChars.u2.SendCompleteHandler         = ProtocolSendComplete;
-    ProtChars.u3.TransferDataCompleteHandler = ProtocolTransferDataComplete;
-    ProtChars.u4.ReceiveHandler              = ProtocolReceive;
+    ProtChars.SendCompleteHandler            = ProtocolSendComplete;
+    ProtChars.TransferDataCompleteHandler    = ProtocolTransferDataComplete;
+    ProtChars.ReceiveHandler                 = ProtocolReceive;
     ProtChars.ReceiveCompleteHandler         = ProtocolReceiveComplete;
     ProtChars.StatusHandler                  = ProtocolStatus;
     ProtChars.StatusCompleteHandler          = ProtocolStatusComplete;
index 555c95a..d3febb8 100644 (file)
@@ -73,8 +73,7 @@ PADDRESS_FILE AddrSearchFirst(
 PADDRESS_FILE AddrSearchNext(
     PAF_SEARCH SearchContext);
 
-ULONG inet_addr(
-    PCSTR AddrString);
+unsigned long PASCAL inet_addr(const char*);
 
 #endif /* __ADDRESS_H */
 
index a1b4f67..948d137 100644 (file)
@@ -45,9 +45,13 @@ typedef struct IPADDR_ENTRY {
 } IPADDR_ENTRY, *PIPADDR_ENTRY;
 
 #define        IP_MIB_STATS_ID           1
+#ifndef IP_MIB_ADDRTABLE_ENTRY_ID
 #define        IP_MIB_ADDRTABLE_ENTRY_ID 0x102
+#endif
 
+#ifndef MAX_PHYSADDR_SIZE
 #define        MAX_PHYSADDR_SIZE 8
+#endif
 
 
 /* Only UDP is supported */
index 7c8be71..e7e6983 100644 (file)
@@ -184,7 +184,9 @@ typedef VOID (*IP_PROTOCOL_HANDLER)(
 #define LOOPBACK_ADDRMASK_IPv4  ((IPv4_RAW_ADDRESS)DH2N(0xFFFFFF00))
 
 /* Protocol definitions */
+#ifndef IPPROTO_RAW
 #define IPPROTO_RAW     0   /* Raw IP */
+#endif
 #define IPPROTO_ICMP    1   /* Internet Control Message Protocol */
 #define IPPROTO_IGMP    2   /* Internet Group Management Protocol */
 #define IPPROTO_TCP     6   /* Transmission Control Protocol */
index 20876f5..6a4de2c 100644 (file)
@@ -23,9 +23,9 @@
 #include <tdiinfo.h>
 #else
 #include <ddk/ntddk.h>
-#include <net/ndis.h>
-#include <net/tdikrnl.h>
-#include <net/tdiinfo.h>
+#include <ddk/ndis.h>
+#include <ddk/tdikrnl.h>
+#include <ddk/tdiinfo.h>
 #endif
 
 #include <debug.h>
index 3e85e8f..2a501cb 100644 (file)
@@ -1,4 +1,4 @@
-# $Id: makefile,v 1.14 2004/02/22 09:59:17 chorns Exp $
+# $Id: makefile,v 1.15 2004/03/02 18:18:14 navaraf Exp $
 
 PATH_TO_TOP = ../../..
 
@@ -8,7 +8,7 @@ TARGET_TYPE = export_driver
 
 TARGET_NAME = tcpip
 
-TARGET_CFLAGS = -I./include -DDBG=1 -DNDIS40
+TARGET_CFLAGS = -I./include -DDBG=1 -DNDIS40 -D__USE_W32API
 
 TARGET_DDKLIBS = ndis.a
 
index 96962d5..76f032f 100644 (file)
@@ -414,7 +414,7 @@ PADDRESS_FILE AddrSearchNext(
         return NULL;
 }
 
-ULONG inet_addr(PCSTR AddrString)
+unsigned long PASCAL inet_addr(const char *AddrString)
 /*
  * Convert an ansi string dotted-quad address to a ulong
  * NOTES:
index 7e91f53..c3cfd16 100644 (file)
@@ -444,9 +444,74 @@ NTSTATUS DispTdiDisconnect(
  *     Status of operation
  */
 {
+  PTDI_REQUEST_KERNEL_QUERY_INFORMATION Parameters;
+  PTRANSPORT_CONTEXT TranContext;
+  PIO_STACK_LOCATION IrpSp;
+
   TI_DbgPrint(DEBUG_IRP, ("Called.\n"));
 
-       return STATUS_NOT_IMPLEMENTED;
+  IrpSp = IoGetCurrentIrpStackLocation(Irp);
+  Parameters = (PTDI_REQUEST_KERNEL_QUERY_INFORMATION)&IrpSp->Parameters;
+
+  TranContext = IrpSp->FileObject->FsContext;
+  if (!TranContext) {
+    TI_DbgPrint(MID_TRACE, ("Bad transport context.\n"));
+    return STATUS_INVALID_CONNECTION;
+  }
+
+  switch (Parameters->QueryType)
+  {
+    case TDI_QUERY_ADDRESS_INFO:
+      {
+        PTDI_ADDRESS_INFO AddressInfo;
+        PADDRESS_FILE AddrFile;
+        PTA_IP_ADDRESS Address;
+
+        AddressInfo = (PTDI_ADDRESS_INFO)MmGetSystemAddressForMdl(Irp->MdlAddress);
+
+        switch ((ULONG)IrpSp->FileObject->FsContext2) {
+          case TDI_TRANSPORT_ADDRESS_FILE:
+            AddrFile = (PADDRESS_FILE)TranContext->Handle.AddressHandle;
+            break;
+
+          case TDI_CONNECTION_FILE:
+            AddrFile = ((PCONNECTION_ENDPOINT)TranContext->Handle.ConnectionContext)->AddressFile;
+            break;
+
+          default:
+            TI_DbgPrint(MIN_TRACE, ("Invalid transport context\n"));
+            return STATUS_INVALID_PARAMETER;
+        }
+
+        if (!AddrFile) {
+          TI_DbgPrint(MID_TRACE, ("No address file object.\n"));
+          return STATUS_INVALID_PARAMETER;
+        }
+
+        if (MmGetMdlByteCount(Irp->MdlAddress) <
+            (sizeof(TDI_ADDRESS_INFO) + sizeof(TDI_ADDRESS_IP))) {
+          TI_DbgPrint(MID_TRACE, ("MDL buffer too small.\n"));
+          return STATUS_BUFFER_OVERFLOW;
+        }
+
+        /* FIXME: Is this count really the one we should return? */
+        AddressInfo->ActivityCount = AddrFile->RefCount;
+
+        Address = (PTA_IP_ADDRESS)&AddressInfo->Address;
+        Address->TAAddressCount = 1;
+        Address->Address[0].AddressLength = TDI_ADDRESS_LENGTH_IP;
+        Address->Address[0].AddressType = TDI_ADDRESS_TYPE_IP;
+        Address->Address[0].Address[0].sin_port = AddrFile->Port;
+        Address->Address[0].Address[0].in_addr = AddrFile->ADE->Address->Address.IPv4Address;        
+        RtlZeroMemory(
+          &Address->Address[0].Address[0].sin_zero,
+          sizeof(Address->Address[0].Address[0].sin_zero));
+
+        return STATUS_SUCCESS;
+      }
+  }
+
+  return STATUS_NOT_IMPLEMENTED;
 }
 
 
index b786a6c..a45223e 100644 (file)
@@ -341,7 +341,7 @@ UINT CopyPacketToBufferChain(
         return 0;
 
     /* Skip SrcOffset bytes in the source packet */
-    NdisGetFirstBufferFromPacket(SrcPacket, &SrcBuffer, (PVOID)&SrcData, &SrcSize, &Total);
+    NdisGetFirstBufferFromPacket(SrcPacket, &SrcBuffer, &SrcData, &SrcSize, &Total);
     if (SkipToOffset(SrcBuffer, SrcOffset, &SrcData, &SrcSize) == -1)
         return 0;
 
index 946ca88..db43cf6 100644 (file)
@@ -1,8 +1,8 @@
-/* $Id: dereg.c,v 1.7 2004/01/28 20:55:50 ekohl Exp $
+/* $Id: dereg.c,v 1.8 2004/03/02 18:18:14 navaraf Exp $
  *
  */
 #include <ddk/ntddk.h>
-#include <net/tdi.h>
+#include <ddk/tdi.h>
 
 /* De-/Register Action IDs for TdiDeRegister */
 
index cb3d35f..439f8a5 100644 (file)
@@ -1,9 +1,9 @@
-/* $Id: handler.c,v 1.6 2004/01/28 20:55:50 ekohl Exp $
+/* $Id: handler.c,v 1.7 2004/03/02 18:18:14 navaraf Exp $
  *
  * DESCRIPTION: Default TDI event handlers.
  */
 #include <ddk/ntddk.h>
-#include <net/tdi.h>
+#include <ddk/tdi.h>
 
 
 /*
index 3c212b8..0ae3de6 100644 (file)
@@ -1,9 +1,9 @@
 
-/* $Id: stubs.c,v 1.8 2004/01/28 20:55:50 ekohl Exp $
+/* $Id: stubs.c,v 1.9 2004/03/02 18:18:14 navaraf Exp $
  *
  */
 #include <ddk/ntddk.h>
-#include <net/tdi.h>
+#include <ddk/tdi.h>
 
 /*
  * @unimplemented
diff --git a/reactos/include/net/miniport.h b/reactos/include/net/miniport.h
deleted file mode 100644 (file)
index 6862292..0000000
+++ /dev/null
@@ -1,851 +0,0 @@
-/*
- * COPYRIGHT:   See COPYING in the top level directory
- * PROJECT:     ReactOS NDIS library
- * FILE:        include/net/miniport.h
- * PURPOSE:     Type definitions available only to NDIS miniport drivers
- */
-#if 0
-#ifndef __MINIPORT_H
-#define __MINIPORT_H
-
-#ifdef _MSC_VER
-#include <ntstatus.h>
-#else /* _MSC_VER */
-#include <ddk/status.h>
-#endif /* _MSC_VER */
-
-/* Base types */
-
-#define IN
-#define OUT
-#define OPTIONAL
-
-#define ANYSIZE_ARRAY   1
-
-#define CONST const
-
-#ifdef _MSC_VER
-
-#ifdef i386
-#define STDCALL _stdcall
-#define CDECL   _cdecl
-#else /* i386 */
-#define STDCALL
-#define CDECL
-#endif /* i386 */
-
-#else /* _MSC_VER */
-
-#ifdef i386
-#define STDCALL __attribute__ ((stdcall))
-#define CDECL   __attribute__ ((cdecl))
-#else /* i386 */
-#define STDCALL
-#define CDECL
-#endif /* i386 */
-
-#endif /* _MSC_VER */
-
-typedef void VOID, *PVOID;
-typedef char CHAR, *PCHAR;
-typedef unsigned char UCHAR, *PUCHAR;
-typedef short SHORT, *PSHORT;
-typedef unsigned short USHORT, *PUSHORT;
-typedef long LONG,*PLONG;
-typedef unsigned long ULONG,*PULONG;
-typedef double DOUBLE, *PDOUBLE;
-typedef struct _QUAD {
-    double  DoNotUseThisField;
-} QUAD,*PQUAD;
-typedef QUAD UQUAD, *PUQUAD;
-typedef signed int INT, *PINT;
-typedef unsigned int UINT, *PUINT;
-typedef double LONGLONG, *PLONGLONG;
-typedef double ULONGLONG, *PULONGLONG;
-
-typedef UCHAR BOOLEAN, *PBOOLEAN;
-typedef ULONG DWORD, *PDWORD;
-
-/* Cardinal types */
-typedef CHAR CCHAR, *PCCHAR;
-typedef SHORT CSHORT, *PCSHORT;
-typedef ULONG CLONG, *PCLONG;
-
-/* UNICODE (wide character) types */
-#ifndef __cplusplus
-typedef short unsigned int wchar_t;
-#endif /* __cplusplus */
-typedef wchar_t WCHAR;
-typedef WCHAR *PWCHAR;
-typedef WCHAR *LPWCH, *PWCH;
-typedef CONST WCHAR *LPCWCH, *PCWCH;
-typedef WCHAR *NWPSTR;
-typedef WCHAR *LPWSTR, *PWSTR;
-typedef CONST WCHAR *LPCWSTR, *PCWSTR;
-
-/* ANSI (multi-byte character) types */
-typedef CHAR *LPCH, *PCH;
-typedef CONST CHAR *LPCCH, *PCCH;
-typedef CHAR *NPSTR;
-typedef CHAR *LPSTR, *PSTR;
-typedef CONST CHAR *LPCSTR, *PCSTR;
-
-/* Neutral ANSI/UNICODE types */
-#ifdef UNICODE
-
-typedef WCHAR TCHAR, *PTCHAR;
-typedef WCHAR TUCHAR, *PTUCHAR;
-
-typedef LPWSTR LPTCH, PTCH;
-typedef LPWSTR PTSTR, LPTSTR;
-typedef LPCWSTR LPCTSTR;
-typedef LPWSTR LP;
-#define _TEXT(string) L##string
-#define _T(string) L##string
-
-#else /* UNICODE */
-
-typedef CHAR TCHAR, *PTCHAR;
-typedef UCHAR TUCHAR, *PTUCHAR;
-
-typedef LPSTR LPTCH, PTCH;
-typedef LPSTR PTSTR, LPTSTR;
-typedef LPCSTR LPCTSTR;
-#define _TEXT(string) string
-#define _T(string) string
-
-#endif /* UNICODE */
-
-#define TEXT(string) __TEXT(string)
-
-
-typedef union _LARGE_INTEGER {
-    struct {
-        ULONG LowPart;
-        LONG HighPart;
-    };
-    struct {
-        ULONG LowPart;
-        LONG HighPart;
-    } u;
-    LONGLONG QuadPart;
-} LARGE_INTEGER;
-
-typedef LARGE_INTEGER *PLARGE_INTEGER;
-
-typedef union _ULARGE_INTEGER {
-    struct {
-        ULONG LowPart;
-        ULONG HighPart;
-    };
-    struct {
-        ULONG LowPart;
-        ULONG HighPart;
-    } u;
-    ULONGLONG QuadPart;
-} ULARGE_INTEGER;
-
-typedef ULARGE_INTEGER *PULARGE_INTEGER;
-
-
-typedef LARGE_INTEGER PHYSICAL_ADDRESS, *PPHYSICAL_ADDRESS;
-
-
-
-/* NT status type and macros for checking status */
-typedef LONG NTSTATUS;
-typedef NTSTATUS *PNTSTATUS;
-
-#ifdef _MSC_VER
-#define NT_SUCCESS(Status)      ((ULONG)(Status) >= 0)
-#endif /* _MSC_VER */
-#define NT_INFORMATION(Status)  ((ULONG)(Status) >> 30 == 1)
-#define NT_WARNING(Status)      ((ULONG)(Status) >> 30 == 2)
-#define NT_ERROR(Status)        ((ULONG)(Status) >> 30 == 3)
-
-#define APPLICATION_ERROR_MASK       0x20000000
-#define ERROR_SEVERITY_SUCCESS       0x00000000
-#define ERROR_SEVERITY_INFORMATIONAL 0x40000000
-#define ERROR_SEVERITY_WARNING       0x80000000
-#define ERROR_SEVERITY_ERROR         0xC0000000
-
-
-
-/* Basic constants */
-
-#define FALSE   0
-#define TRUE    1
-
-#define NULL    ((PVOID)0)
-
-
-
-/* Counted strings */
-
-typedef struct _STRING
-{
-    USHORT  Length;
-    USHORT  MaximumLength;
-    PCHAR   Buffer;
-} STRING, *PSTRING;
-
-typedef STRING ANSI_STRING, *PANSI_STRING;
-typedef STRING OEM_STRING, *POEM_STRING;
-
-#define ANSI_NULL   ((CHAR)0)
-
-typedef struct _CSTRING
-{
-    USHORT      Length;
-    USHORT      MaximumLength;
-    CONST CHAR  *Buffer;
-} CSTRING, *PCSTRING;
-
-typedef CSTRING CANSI_STRING, *PCANSI_STRING;
-
-
-typedef struct _UNICODE_STRING
-{
-    USHORT  Length;
-    USHORT  MaximumLength;
-    PWSTR   Buffer;
-} UNICODE_STRING, *PUNICODE_STRING;
-
-typedef struct _CUNICODE_STRING
-{
-    USHORT      Length;
-    USHORT      MaximumLength;
-    CONST PWSTR Buffer;
-} CUNICODE_STRING, *PCUNICODE_STRING;
-
-#define UNICODE_NULL    ((WCHAR)0)
-
-
-
-/* Linked lists */
-
-typedef struct _LIST_ENTRY
-{
-    struct _LIST_ENTRY *Flink;
-    struct _LIST_ENTRY *Blink;
-} LIST_ENTRY, *PLIST_ENTRY;
-
-typedef struct _SINGLE_LIST_ENTRY
-{
-    struct _SINGLE_LIST_ENTRY *Next;
-} SINGLE_LIST_ENTRY, *PSINGLE_LIST_ENTRY;
-
-
-/*
- * VOID InitializeListHead(
- *     PLIST_ENTRY ListHead);
- */
-#define InitializeListHead(ListHead) \
-{                                    \
-    (ListHead)->Flink = (ListHead);  \
-    (ListHead)->Blink = (ListHead);  \
-}
-
-
-/*
- * VOID InsertHeadList(
- *     LIST_ENTRY ListHead,
- *     PLIST_ENTRY Entry);
- */
-#define InsertHeadList(ListHead, ListEntry) \
-{                                           \
-    PLIST_ENTRY OldFlink;                   \
-    OldFlink           = (ListHead)->Flink; \
-    (ListEntry)->Flink = OldFlink;          \
-    (ListEntry)->Blink = (ListHead);        \
-    OldFlink->Blink    = (ListEntry);       \
-    (ListHead)->Flink  = (ListEntry);       \
-}
-
-
-/*
- * VOID InsertTailList(
- *     PLIST_ENTRY ListHead,
- *        PLIST_ENTRY Entry);
- */
-#define InsertTailList(ListHead, ListEntry) \
-{                                           \
-    PLIST_ENTRY OldBlink;                   \
-       OldBlink           = (ListHead)->Blink; \
-       (ListEntry)->Flink = (ListHead);        \
-       (ListEntry)->Blink = OldBlink;          \
-       OldBlink->Flink    = (ListEntry);       \
-       (ListHead)->Blink  = (ListEntry);       \
-}
-
-/*
- * BOOLEAN IsListEmpty(
- *     PLIST_ENTRY ListHead);
- */
-#define IsListEmpty(ListHead) \
-    ((ListHead)->Flink == (ListHead))
-
-
-/*
- * PSINGLE_LIST_ENTRY PopEntryList(
- *     PSINGLE_LIST_ENTRY ListHead);
- */
-#define PopEntryList(ListHead)               \
-    (ListHead)->Next;                        \
-{                                            \
-    PSINGLE_LIST_ENTRY FirstEntry;           \
-                                             \
-    FirstEntry = (ListHead)->Next;           \
-    if (FirstEntry != NULL)                  \
-    {                                        \
-        (ListHead)->Next = FirstEntry->Next; \
-    }                                        \
-}
-
-
-/*
- * VOID PushEntryList(
- *     PSINGLE_LIST_ENTRY ListHead,
- *     PSINGLE_LIST_ENTRY Entry);
- */
-#define PushEntryList(ListHead, Entry)   \
-    (Entry)->Next    = (ListHead)->Next; \
-    (ListHead)->Next = (Entry)
-
-
-/*
- * VOID RemoveEntryList(
- *     PLIST_ENTRY Entry);
- */
-#define RemoveEntryList(ListEntry)        \
-{                                         \
-    PLIST_ENTRY OldFlink;                 \
-    PLIST_ENTRY OldBlink;                 \
-    OldFlink        = (ListEntry)->Flink; \
-    OldBlink        = (ListEntry)->Blink; \
-    OldFlink->Blink = OldBlink;           \
-    OldBlink->Flink = OldFlink;           \
-}
-
-
-/*
- * PLIST_ENTRY RemoveHeadList(
- *     PLIST_ENTRY ListHead);
- */
-#define RemoveHeadList(ListHead)       \
-       (ListHead)->Flink;                 \
-{                                      \
-    RemoveEntryList((ListHead)->Flink) \
-}
-
-
-/*
- * PLIST_ENTRY RemoveTailList(
- *     PLIST_ENTRY ListHead);
- */
-#define RemoveTailList(ListHead)       \
-    (ListHead)->Blink;                 \
-{                                      \
-    RemoveEntryList((ListHead)->Blink) \
-}
-
-
-/* Hardware */
-
-typedef UCHAR KIRQL, *PKIRQL;
-
-typedef struct _KSPIN_LOCK
-{
-    ULONG    Lock;
-} KSPIN_LOCK, *PKSPIN_LOCK;
-
-
-typedef struct _ADAPTER_OBJECT  *PADAPTER_OBJECT;
-typedef struct _DEVICE_OBJECT   *PDEVICE_OBJECT;
-typedef struct _DRIVER_OBJECT   *PDRIVER_OBJECT;
-typedef struct _FILE_OBJECT     *PFILE_OBJECT;
-
-typedef struct _KINTERRUPT      *PKINTERRUPT;
-
-
-/* Memory Descriptor List */
-typedef struct _MDL {
-    struct _MDL *Next;
-    CSHORT Size;
-    CSHORT MdlFlags;
-    struct _EPROCESS *Process;
-    PVOID MappedSystemVa;
-    PVOID StartVa;
-    ULONG ByteCount;
-    ULONG ByteOffset;
-} MDL, *PMDL;
-
-#define MDL_MAPPED_TO_SYSTEM_VA     0x0001
-#define MDL_PAGES_LOCKED            0x0002
-#define MDL_SOURCE_IS_NONPAGED_POOL 0x0004
-#define MDL_ALLOCATED_FIXED_SIZE    0x0008
-#define MDL_PARTIAL                 0x0010
-#define MDL_PARTIAL_HAS_BEEN_MAPPED 0x0020
-#define MDL_IO_PAGE_READ            0x0040
-#define MDL_WRITE_OPERATION         0x0080
-#define MDL_PARENT_MAPPED_SYSTEM_VA 0x0100
-#define MDL_LOCK_HELD               0x0200
-#define MDL_PHYSICAL_VIEW           0x0400
-#define MDL_IO_SPACE                0x0800
-#define MDL_NETWORK_HEADER          0x1000
-#define MDL_MAPPING_CAN_FAIL        0x2000
-#define MDL_ALLOCATED_MUST_SUCCEED  0x4000
-
-
-#define MDL_MAPPING_FLAGS (MDL_MAPPED_TO_SYSTEM_VA     | \
-                           MDL_PAGES_LOCKED            | \
-                           MDL_SOURCE_IS_NONPAGED_POOL | \
-                           MDL_PARTIAL_HAS_BEEN_MAPPED | \
-                           MDL_PARENT_MAPPED_SYSTEM_VA | \
-                           MDL_LOCK_HELD               | \
-                           MDL_SYSTEM_VA               | \
-                           MDL_IO_SPACE )
-
-
-typedef struct _DISPATCHER_HEADER
-{
-    UCHAR       Type;
-    UCHAR       Absolute;
-    UCHAR       Size;
-    UCHAR       Inserted;
-    LONG        SignalState;
-    LIST_ENTRY  WaitListHead;
-} DISPATCHER_HEADER;
-
-typedef struct _KEVENT
-{
-    DISPATCHER_HEADER   Header;
-} KEVENT, *PKEVENT;
-
-
-typedef struct _KTIMER
-{
-    DISPATCHER_HEADER   Header;
-    ULARGE_INTEGER      DueTime;
-    LIST_ENTRY          TimerListEntry;
-    struct _KDPC        *Dpc;
-    LONG                Period;
-} KTIMER, *PKTIMER;
-
-
-typedef enum _KDPC_IMPORTANCE
-{
-    LowImportance,
-    MediumImportance,
-    HighImportance
-} KDPC_IMPORTANCE;
-
-/* Forward declaration */
-struct _KDPC;
-
-typedef VOID (*PKDEFERRED_ROUTINE)(
-    IN  struct _KDPC    *Dpc,
-    IN  PVOID           DeferredContext,
-    IN  PVOID           SystemArgument1,
-    IN  PVOID           SystemArgument2);
-
-/* Deferred Procedure Call */
-
-typedef struct _KDPC {
-    CSHORT              Type;
-    UCHAR               Number;
-    UCHAR               Importance;
-    LIST_ENTRY          DpcListEntry;
-    PKDEFERRED_ROUTINE  DeferredRoutine;
-    PVOID               DeferredContext;
-    PVOID               SystemArgument1;
-    PVOID               SystemArgument2;
-    PULONG              Lock;
-} KDPC, *PKDPC;
-
-
-typedef enum _INTERFACE_TYPE
-{
-    InterfaceTypeUndefined = -1,
-    Internal,
-    Isa,
-    Eisa,
-    MicroChannel,
-    TurboChannel,
-    PCIBus,
-    VMEBus,
-    NuBus,
-    PCMCIABus,
-    CBus,
-    MPIBus,
-    MPSABus,
-    ProcessorInternal,
-    InternalPowerBus,
-    PNPISABus,
-    MaximumInterfaceType
-} INTERFACE_TYPE, *PINTERFACE_TYPE;
-
-
-typedef enum _DMA_WIDTH
-{
-    Width8Bits,
-    Width16Bits,
-    Width32Bits,
-    MaximumDmaWidth
-} DMA_WIDTH, *PDMA_WIDTH;
-
-typedef enum _DMA_SPEED
-{
-    Compatible,
-    TypeA,
-    TypeB,
-    TypeC,
-    TypeF,
-    MaximumDmaSpeed
-} DMA_SPEED, *PDMA_SPEED;
-
-
-typedef enum _KINTERRUPT_MODE
-{
-    LevelSensitive,
-    Latched
-} KINTERRUPT_MODE;
-
-
-typedef struct _DMA_CONFIGURATION_BYTE0
-{
-    UCHAR   Channel:3;
-    UCHAR   Reserved:3;
-    UCHAR   Shared:1;
-    UCHAR   MoreEntries:1;
-} DMA_CONFIGURATION_BYTE0;
-
-typedef struct _DMA_CONFIGURATION_BYTE1
-{
-    UCHAR   Reserved0:2;
-    UCHAR   TransferSize:2;
-    UCHAR   Timing:2;
-    UCHAR   Reserved1:2;
-} DMA_CONFIGURATION_BYTE1;
-
-
-typedef struct _CM_MCA_POS_DATA
-{
-    USHORT  AdapterId;
-    UCHAR   PosData1;
-    UCHAR   PosData2;
-    UCHAR   PosData3;
-    UCHAR   PosData4;
-} CM_MCA_POS_DATA, *PCM_MCA_POS_DATA;
-
-typedef struct _EISA_MEMORY_TYPE
-{
-    UCHAR   ReadWrite:1;
-    UCHAR   Cached:1;
-    UCHAR   Reserved0:1;
-    UCHAR   Type:2;
-    UCHAR   Shared:1;
-    UCHAR   Reserved1:1;
-    UCHAR   MoreEntries:1;
-} EISA_MEMORY_TYPE, *PEISA_MEMORY_TYPE;
-
-typedef struct _EISA_MEMORY_CONFIGURATION
-{
-    EISA_MEMORY_TYPE    ConfigurationByte;
-    UCHAR   DataSize;
-    USHORT  AddressLowWord;
-    UCHAR   AddressHighByte;
-    USHORT  MemorySize;
-} EISA_MEMORY_CONFIGURATION, *PEISA_MEMORY_CONFIGURATION;
-
-
-typedef struct _EISA_IRQ_DESCRIPTOR
-{
-    UCHAR   Interrupt:4;
-    UCHAR   Reserved:1;
-    UCHAR   LevelTriggered:1;
-    UCHAR   Shared:1;
-    UCHAR   MoreEntries:1;
-} EISA_IRQ_DESCRIPTOR, *PEISA_IRQ_DESCRIPTOR;
-
-typedef struct _EISA_IRQ_CONFIGURATION
-{
-    EISA_IRQ_DESCRIPTOR ConfigurationByte;
-    UCHAR   Reserved;
-} EISA_IRQ_CONFIGURATION, *PEISA_IRQ_CONFIGURATION;
-
-typedef struct _EISA_DMA_CONFIGURATION
-{
-    DMA_CONFIGURATION_BYTE0 ConfigurationByte0;
-    DMA_CONFIGURATION_BYTE1 ConfigurationByte1;
-} EISA_DMA_CONFIGURATION, *PEISA_DMA_CONFIGURATION;
-
-
-typedef struct _EISA_PORT_DESCRIPTOR
-{
-    UCHAR   NumberPorts:5;
-    UCHAR   Reserved:1;
-    UCHAR   Shared:1;
-    UCHAR   MoreEntries:1;
-} EISA_PORT_DESCRIPTOR, *PEISA_PORT_DESCRIPTOR;
-
-typedef struct _EISA_PORT_CONFIGURATION
-{
-    EISA_PORT_DESCRIPTOR    Configuration;
-    USHORT  PortAddress;
-} EISA_PORT_CONFIGURATION, *PEISA_PORT_CONFIGURATION;
-
-typedef struct _CM_EISA_SLOT_INFORMATION
-{
-    UCHAR   ReturnCode;
-    UCHAR   ReturnFlags;
-    UCHAR   MajorRevision;
-    UCHAR   MinorRevision;
-    USHORT  Checksum;
-    UCHAR   NumberFunctions;
-    UCHAR   FunctionInformation;
-    ULONG   CompressedId;
-} CM_EISA_SLOT_INFORMATION, *PCM_EISA_SLOT_INFORMATION;
-
-typedef struct _CM_EISA_FUNCTION_INFORMATION
-{
-    ULONG   CompressedId;
-    UCHAR   IdSlotFlags1;
-    UCHAR   IdSlotFlags2;
-    UCHAR   MinorRevision;
-    UCHAR   MajorRevision;
-    UCHAR   Selections[26];
-    UCHAR   FunctionFlags;
-    UCHAR   TypeString[80];
-    EISA_MEMORY_CONFIGURATION   EisaMemory[9];
-    EISA_IRQ_CONFIGURATION      EisaIrq[7];
-    EISA_DMA_CONFIGURATION      EisaDma[4];
-    EISA_PORT_CONFIGURATION     EisaPort[20];
-    UCHAR   InitializationData[60];
-} CM_EISA_FUNCTION_INFORMATION, *PCM_EISA_FUNCTION_INFORMATION;
-
-
-typedef struct _CM_PARTIAL_RESOURCE_DESCRIPTOR
-{
-    UCHAR   Type;
-    UCHAR   ShareDisposition;
-    USHORT  Flags;
-    union {
-        struct {
-            PHYSICAL_ADDRESS    Start;
-            ULONG               Length;
-        } Generic;
-
-        struct {
-            PHYSICAL_ADDRESS    Start;
-            ULONG               Length;
-        } Port;
-
-        struct {
-            ULONG   Level;
-            ULONG   Vector;
-            ULONG   Affinity;
-        } Interrupt;
-
-        struct {
-            PHYSICAL_ADDRESS    Start;
-            ULONG               Length;
-        } Memory;
-
-        struct {
-            ULONG   Channel;
-            ULONG   Port;
-            ULONG   Reserved1;
-        } Dma;
-
-        struct {
-            ULONG   Data[3];
-        } DevicePrivate;
-
-        struct {
-            ULONG   Start;
-            ULONG   Length;
-            ULONG   Reserved;
-        } BusNumber;
-
-        struct {
-            ULONG   DataSize;
-            ULONG   Reserved1;
-            ULONG   Reserved2;
-        } DeviceSpecificData;
-    } u;
-} CM_PARTIAL_RESOURCE_DESCRIPTOR, *PCM_PARTIAL_RESOURCE_DESCRIPTOR;
-
-typedef struct _CM_PARTIAL_RESOURCE_LIST
-{
-    USHORT  Version;
-    USHORT  Revision;
-    ULONG   Count;
-    CM_PARTIAL_RESOURCE_DESCRIPTOR  PartialDescriptors[1];
-} CM_PARTIAL_RESOURCE_LIST, *PCM_PARTIAL_RESOURCE_LIST;
-
-typedef struct _CM_FULL_RESOURCE_DESCRIPTOR
-{
-    INTERFACE_TYPE  InterfaceType;
-    ULONG           BusNumber;
-    CM_PARTIAL_RESOURCE_LIST    PartialResourceList;
-} CM_FULL_RESOURCE_DESCRIPTOR, *PCM_FULL_RESOURCE_DESCRIPTOR;
-
-typedef struct _CM_RESOURCE_LIST
-{
-    ULONG   Count;
-    CM_FULL_RESOURCE_DESCRIPTOR List[1];
-} CM_RESOURCE_LIST, *PCM_RESOURCE_LIST;
-
-
-
-/* Operating System services */
-
-/* Debugging */
-
-ULONG CDECL DbgPrint(
-    PCH Format,
-    ...);
-
-#ifdef DBG
-
-VOID
-STDCALL
-RtlAssert(
-    PVOID   FailedAssertion,
-    PVOID   FileName,
-    ULONG   LineNumber,
-    PCHAR   Message);
-
-#define ASSERT(exp) \
-    if (!(exp)) \
-        RtlAssert(#exp, __FILE__, __LINE__, NULL)
-
-#define ASSERTMSG(msg, exp) \
-    if (!(exp)) \
-        RtlAssert(#exp, __FILE__, __LINE__, msg)
-
-#else /* DBG */
-
-#define ASSERT(exp)
-#define ASSERTMSG(msg, exp)
-
-#endif /* DBG */
-
-
-/* Runtime library */
-
-#define RtlEqualMemory(Destination,Source,Length)   (!memcmp((Destination), (Source), (Length)))
-#define RtlMoveMemory(Destination,Source,Length)    memmove((Destination), (Source), (Length))
-#define RtlCopyMemory(Destination,Source,Length)    memcpy((Destination), (Source), (Length))
-#define RtlFillMemory(Destination,Length,Fill)      memset((Destination), (Fill),(Length))
-#define RtlZeroMemory(Destination,Length)           memset((Destination), 0, (Length))
-
-
-/* Core kernel functions */
-
-VOID
-STDCALL
-KeStallExecutionProcessor(
-    ULONG   MicroSeconds);
-
-
-/* I/O functions */
-
-VOID
-STDCALL
-READ_PORT_BUFFER_UCHAR(
-    PUCHAR  Port,
-    PUCHAR  Value,
-    ULONG   Count);
-
-VOID
-STDCALL
-READ_PORT_BUFFER_ULONG(
-    PULONG  Port,
-    PULONG  Value,
-    ULONG   Count);
-
-VOID
-STDCALL
-READ_PORT_BUFFER_USHORT(
-    PUSHORT Port,
-    PUSHORT Value,
-    ULONG   Count);
-
-UCHAR
-STDCALL
-READ_PORT_UCHAR(
-    PUCHAR  Port);
-
-ULONG
-STDCALL
-READ_PORT_ULONG(
-    PULONG  Port);
-
-USHORT
-STDCALL
-READ_PORT_USHORT(
-    PUSHORT Port);
-
-VOID
-STDCALL
-WRITE_PORT_BUFFER_UCHAR(
-    PUCHAR  Port,
-    PUCHAR  Value,
-    ULONG   Count);
-
-VOID
-STDCALL
-WRITE_PORT_BUFFER_ULONG(
-    PULONG  Port,
-    PULONG  Value,
-    ULONG   Count);
-
-VOID
-STDCALL
-WRITE_PORT_BUFFER_USHORT(
-    PUSHORT Port,
-    PUSHORT Value,
-    ULONG   Count);
-
-VOID
-STDCALL
-WRITE_PORT_UCHAR(
-    PUCHAR  Port,
-    UCHAR   Value);
-
-VOID
-STDCALL
-WRITE_PORT_ULONG(
-    PULONG  Port,
-    ULONG   Value);
-
-VOID
-STDCALL
-WRITE_PORT_USHORT(
-    PUSHORT Port,
-    USHORT  Value);
-
-VOID
-STDCALL
-WRITE_REGISTER_UCHAR(
-    PUCHAR  Register,
-    UCHAR   Value);
-
-VOID
-STDCALL
-WRITE_REGISTER_ULONG(
-    PULONG  Register,
-    ULONG   Value);
-
-VOID
-STDCALL
-WRITE_REGISTER_USHORT(
-    PUSHORT Register,
-    USHORT  Value);
-
-#endif /* __MINIPORT_H */
-
-/* EOF */
-#endif
index 4b1fedf..79d2fdb 100644 (file)
@@ -52,7 +52,7 @@ extern "C" {
 
 #include "ntddk.h"
 #include "ntddndis.h"
-#include "netpnp.h"
+#include <ddk/netpnp.h>
 
 #ifdef NDIS50
 #undef NDIS40
@@ -2626,10 +2626,7 @@ NdisWriteErrorLogEntry(
     IN  NDIS_HANDLE     NdisAdapterHandle,
     IN  NDIS_ERROR_CODE ErrorCode,
     IN  ULONG           NumberOfErrorValues,
-    IN  ULONG           ERROR_LOG_MAXIMUM_SIZE);
-/*  IN  ULONG           ...); 
- *  ERROR_LOG_MAXIMUM_SIZE = ... in MSDN
- */
+    ...); 
 
 /*
  * VOID
diff --git a/reactos/include/net/netevent.h b/reactos/include/net/netevent.h
deleted file mode 100644 (file)
index 0cf66e0..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * netevent.h
- *
- * Network events
- *
- * This file is part of the w32api package.
- *
- * Contributors:
- *   Created by Casper S. Hornstrup <chorns@users.sourceforge.net>
- *
- * THIS SOFTWARE IS NOT COPYRIGHTED
- *
- * This source code is offered for use in the public domain. You may
- * use, modify or distribute it freely.
- *
- * This code is distributed in the hope that it will be useful but
- * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
- * DISCLAIMED. This includes but is not limited to warranties of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- *
- */
-
-#ifndef __NETEVENT_H
-#define __NETEVENT_H
-
-#if __GNUC__ >=3
-#pragma GCC system_header
-#endif
-
-#define EVENT_TRANSPORT_REGISTER_FAILED  0xC000232CL
-
-#define EVENT_TRANSPORT_ADAPTER_NOT_FOUND 0xC000232EL
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* __NETEVENT_H */
diff --git a/reactos/include/net/netpnp.h b/reactos/include/net/netpnp.h
deleted file mode 100644 (file)
index 32f305d..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * netpnp.h
- *
- * Network Plug and Play event support
- *
- * This file is part of the w32api package.
- *
- * Contributors:
- *   Created by Casper S. Hornstrup <chorns@users.sourceforge.net>
- *
- * THIS SOFTWARE IS NOT COPYRIGHTED
- *
- * This source code is offered for use in the public domain. You may
- * use, modify or distribute it freely.
- *
- * This code is distributed in the hope that it will be useful but
- * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
- * DISCLAIMED. This includes but is not limited to warranties of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- *
- */
-
-#ifndef __NETPNP_H
-#define __NETPNP_H
-
-#if __GNUC__ >=3
-#pragma GCC system_header
-#endif
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#pragma pack(push,4)
-
-typedef enum _NET_PNP_EVENT_CODE {
-  NetEventSetPower,
-  NetEventQueryPower,
-  NetEventQueryRemoveDevice,
-  NetEventCancelRemoveDevice,
-  NetEventReconfigure,
-  NetEventBindList,
-  NetEventBindsComplete,
-  NetEventPnPCapabilities,
-  NetEventMaximum
-} NET_PNP_EVENT_CODE, *PNET_PNP_EVENT_CODE;
-
-typedef struct _NET_PNP_EVENT {
-  NET_PNP_EVENT_CODE  NetEvent;
-  PVOID  Buffer;
-  ULONG  BufferLength;
-  ULONG_PTR  NdisReserved[4];
-  ULONG_PTR  TransportReserved[4];
-  ULONG_PTR  TdiReserved[4];
-  ULONG_PTR  TdiClientReserved[4];
-} NET_PNP_EVENT, *PNET_PNP_EVENT;
-
-typedef enum _NET_DEVICE_POWER_STATE {
-  NetDeviceStateUnspecified,
-  NetDeviceStateD0,
-  NetDeviceStateD1,
-  NetDeviceStateD2,
-  NetDeviceStateD3,
-  NetDeviceStateMaximum
-} NET_DEVICE_POWER_STATE, *PNET_DEVICE_POWER_STATE;
-
-#pragma pack(pop)
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* __NETPNP_H */
diff --git a/reactos/include/net/ntddtdi.h b/reactos/include/net/ntddtdi.h
deleted file mode 100644 (file)
index 5ff5ad0..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * ntddtdi.h
- *
- * TDI IOCTL interface
- *
- * This file is part of the w32api package.
- *
- * Contributors:
- *   Created by Casper S. Hornstrup <chorns@users.sourceforge.net>
- *
- * THIS SOFTWARE IS NOT COPYRIGHTED
- *
- * This source code is offered for use in the public domain. You may
- * use, modify or distribute it freely.
- *
- * This code is distributed in the hope that it will be useful but
- * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
- * DISCLAIMED. This includes but is not limited to warranties of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- *
- */
-
-#ifndef __NTDDTDI_H
-#define __NTDDTDI_H
-
-#if __GNUC__ >=3
-#pragma GCC system_header
-#endif
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#pragma pack(push,4)
-
-#include "ntddk.h"
-
-
-#define DD_TDI_DEVICE_NAME                "\\Device\\UNKNOWN"
-#define DD_TDI_DEVICE_NAME_U              L"\\Device\\UNKNOWN"
-
-#define _TDI_CONTROL_CODE(Request, Method) \
-  CTL_CODE(FILE_DEVICE_TRANSPORT, Request, Method, FILE_ANY_ACCESS)
-
-#define IOCTL_TDI_ACCEPT                  _TDI_CONTROL_CODE(0,  METHOD_BUFFERED)
-#define IOCTL_TDI_CONNECT                 _TDI_CONTROL_CODE(1,  METHOD_BUFFERED)
-#define IOCTL_TDI_DISCONNECT              _TDI_CONTROL_CODE(2,  METHOD_BUFFERED)
-#define IOCTL_TDI_LISTEN                  _TDI_CONTROL_CODE(3,  METHOD_BUFFERED)
-#define IOCTL_TDI_QUERY_INFORMATION       _TDI_CONTROL_CODE(4,  METHOD_OUT_DIRECT)
-#define IOCTL_TDI_RECEIVE                 _TDI_CONTROL_CODE(5,  METHOD_OUT_DIRECT)
-#define IOCTL_TDI_RECEIVE_DATAGRAM        _TDI_CONTROL_CODE(6,  METHOD_OUT_DIRECT)
-#define IOCTL_TDI_SEND                    _TDI_CONTROL_CODE(7,  METHOD_IN_DIRECT)
-#define IOCTL_TDI_SEND_DATAGRAM           _TDI_CONTROL_CODE(8,  METHOD_IN_DIRECT)
-#define IOCTL_TDI_SET_EVENT_HANDLER       _TDI_CONTROL_CODE(9,  METHOD_BUFFERED)
-#define IOCTL_TDI_SET_INFORMATION         _TDI_CONTROL_CODE(10, METHOD_IN_DIRECT)
-#define IOCTL_TDI_ASSOCIATE_ADDRESS       _TDI_CONTROL_CODE(11, METHOD_BUFFERED)
-#define IOCTL_TDI_DISASSOCIATE_ADDRESS    _TDI_CONTROL_CODE(12, METHOD_BUFFERED)
-#define IOCTL_TDI_ACTION                  _TDI_CONTROL_CODE(13, METHOD_OUT_DIRECT)
-
-#pragma pack(pop)
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* __NTDDTDI_H */
diff --git a/reactos/include/net/tdi.h b/reactos/include/net/tdi.h
deleted file mode 100644 (file)
index f667fe7..0000000
+++ /dev/null
@@ -1,641 +0,0 @@
-/*
- * tdi.h
- *
- * TDI user mode definitions
- *
- * This file is part of the w32api package.
- *
- * Contributors:
- *   Created by Casper S. Hornstrup <chorns@users.sourceforge.net>
- *
- * THIS SOFTWARE IS NOT COPYRIGHTED
- *
- * This source code is offered for use in the public domain. You may
- * use, modify or distribute it freely.
- *
- * This code is distributed in the hope that it will be useful but
- * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
- * DISCLAIMED. This includes but is not limited to warranties of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- *
- */
-
-#ifndef __TDI_H
-#define __TDI_H
-
-#if __GNUC__ >=3
-#pragma GCC system_header
-#endif
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#pragma pack(push,4)
-
-#include "ntddk.h"
-#include "ntddtdi.h"
-#include "tdistat.h"
-#include "netpnp.h"
-
-/* FIXME: Missed some definitions in ntddk.h */
-
-/* Could be defined elsewhere 
- * #ifndef INT
- * typedef signed int INT, *PINT;
- * #endif
- */
-
-
-/* TDI transport driver dispatch routines */
-
-NTSTATUS TdiDispatchCleanup(
-    IN PDEVICE_OBJECT  DeviceObject,
-    IN PIRP  Irp);
-
-NTSTATUS TdiDispatchClose(
-    IN PDEVICE_OBJECT  DeviceObject,
-    IN PIRP  Irp);
-
-NTSTATUS TdiDispatchCreate(
-    IN PDEVICE_OBJECT  DeviceObject,
-    IN PIRP  Irp);
-
-NTSTATUS TdiDispatchDeviceControl(
-    IN PDEVICE_OBJECT  DeviceObject,
-    IN PIRP  Irp,
-    IN PIO_STACK_LOCATION  IrpSp);
-
-BOOLEAN TdiDispatchFastDeviceControl(
-    IN PFILE_OBJECT  FileObject,
-    IN BOOLEAN  Wait,
-    IN PVOID  InputBuffer,
-    IN ULONG  InputBufferLength,
-    IN OUT PVOID  OutputBuffer,
-    IN ULONG  OutputBufferLength,
-    IN ULONG  IoControlCode,
-    OUT PIO_STATUS_BLOCK  IoStatus);
-
-NTSTATUS TdiDispatchInternalDeviceControl(
-    IN PDEVICE_OBJECT  DeviceObject,
-    IN PIRP  Irp);
-
-
-
-/* Basic types */
-
-typedef LONG    TDI_STATUS;
-typedef PVOID   CONNECTION_CONTEXT;
-
-typedef struct _TDI_CONNECTION_INFORMATION {
-    LONG   UserDataLength;
-    PVOID  UserData;
-    LONG   OptionsLength;
-    PVOID  Options;
-    LONG   RemoteAddressLength;
-    PVOID  RemoteAddress;
-} TDI_CONNECTION_INFORMATION, *PTDI_CONNECTION_INFORMATION;
-
-typedef struct _TDI_REQUEST {
-    union {
-        HANDLE              AddressHandle;
-        CONNECTION_CONTEXT  ConnectionContext;
-        HANDLE              ControlChannel;
-    } Handle;
-    PVOID      RequestNotifyObject;
-    PVOID      RequestContext;
-    TDI_STATUS TdiStatus;
-} TDI_REQUEST, *PTDI_REQUEST;
-
-typedef struct _TDI_REQUEST_STATUS {
-    TDI_STATUS  Status;
-    PVOID  RequestContext;
-    ULONG  BytesTransferred;
-} TDI_REQUEST_STATUS, *PTDI_REQUEST_STATUS;
-
-typedef struct _TA_ADDRESS {
-    USHORT  AddressLength;
-    USHORT  AddressType;
-    UCHAR   Address[1];
-} TA_ADDRESS, *PTA_ADDRESS;
-
-#define TDI_ADDRESS_TYPE_UNSPEC      0
-#define TDI_ADDRESS_TYPE_UNIX        1
-#define TDI_ADDRESS_TYPE_IP          2
-#define TDI_ADDRESS_TYPE_IMPLINK     3
-#define TDI_ADDRESS_TYPE_PUP         4
-#define TDI_ADDRESS_TYPE_CHAOS       5
-#define TDI_ADDRESS_TYPE_NS          6
-#define TDI_ADDRESS_TYPE_IPX         6
-#define TDI_ADDRESS_TYPE_NBS         7
-#define TDI_ADDRESS_TYPE_ECMA        8
-#define TDI_ADDRESS_TYPE_DATAKIT     9
-#define TDI_ADDRESS_TYPE_CCITT      10
-#define TDI_ADDRESS_TYPE_SNA        11
-#define TDI_ADDRESS_TYPE_DECnet     12
-#define TDI_ADDRESS_TYPE_DLI        13
-#define TDI_ADDRESS_TYPE_LAT        14
-#define TDI_ADDRESS_TYPE_HYLINK     15
-#define TDI_ADDRESS_TYPE_APPLETALK  16
-#define TDI_ADDRESS_TYPE_NETBIOS    17
-#define TDI_ADDRESS_TYPE_8022       18
-#define TDI_ADDRESS_TYPE_OSI_TSAP   19
-#define TDI_ADDRESS_TYPE_NETONE     20
-#define TDI_ADDRESS_TYPE_VNS        21
-#define TDI_ADDRESS_TYPE_NETBIOS_EX 22
-#define TDI_ADDRESS_TYPE_IP6                23
-#define TDI_ADDRESS_TYPE_NETBIOS_UNICODE_EX 24
-
-#define TdiTransportAddress             "TransportAddress"
-#define TdiConnectionContext            "ConnectionContext"
-#define TDI_TRANSPORT_ADDRESS_LENGTH    (sizeof(TdiTransportAddress) - 1)
-#define TDI_CONNECTION_CONTEXT_LENGTH   (sizeof(TdiConnectionContext) - 1)
-#define TDI_ADDRESS_HEADER_LEN (2 * sizeof(USHORT))
-
-typedef struct _TRANSPORT_ADDRESS {
-    LONG        TAAddressCount;
-    TA_ADDRESS  Address[1];
-} TRANSPORT_ADDRESS, *PTRANSPORT_ADDRESS;
-
-typedef struct _TDI_ADDRESS_INFO {
-    ULONG              ActivityCount;
-    TRANSPORT_ADDRESS  Address;
-} TDI_ADDRESS_INFO, *PTDI_ADDRESS_INFO;
-
-typedef struct _TDI_ACTION_HEADER {
-    ULONG   TransportId;
-    USHORT  ActionCode;
-    USHORT  Reserved;
-} TDI_ACTION_HEADER, *PTDI_ACTION_HEADER;
-
-typedef struct _TDI_ADDRESS_8022 {
-    UCHAR MACAddress[6];
-} TDI_ADDRESS_8022, *PTDI_ADDRESS_8022;
-
-#define TDI_ADDRESS_LENGTH_8022           sizeof(TDI_ADDRESS_8022);
-
-typedef struct _TDI_ADDRESS_APPLETALK {
-    USHORT  Network;
-    UCHAR   Node;
-    UCHAR   Socket;
-} TDI_ADDRESS_APPLETALK, *PTDI_ADDRESS_APPLETALK;
-
-#define TDI_ADDRESS_LENGTH_APPLETALK    sizeof(TDI_ADDRESS_APPLETALK)
-
-typedef struct _TDI_ADDRESS_IP {
-    USHORT  sin_port;
-    ULONG   in_addr;
-    UCHAR   sin_zero[8];
-} TDI_ADDRESS_IP, *PTDI_ADDRESS_IP;
-
-#define TDI_ADDRESS_LENGTH_IP   sizeof(TDI_ADDRESS_IP)
-
-typedef struct _TDI_ADDRESS_IPX {
-    ULONG   NetworkAddress;
-    UCHAR   NodeAddress[6];
-    USHORT  Socket;
-} TDI_ADDRESS_IPX, *PTDI_ADDRESS_IPX;
-
-#define TDI_ADDRESS_LENGTH_IPX  sizeof(TDI_ADDRESS_IPX)
-
-/* TDI_ADDRESS_NETBIOS.NetbiosNameType constants */
-#define TDI_ADDRESS_NETBIOS_TYPE_UNIQUE         0x0000
-#define TDI_ADDRESS_NETBIOS_TYPE_GROUP          0x0001
-#define TDI_ADDRESS_NETBIOS_TYPE_QUICK_UNIQUE   0x0002
-#define TDI_ADDRESS_NETBIOS_TYPE_QUICK_GROUP    0x0003
-
-typedef struct _TDI_ADDRESS_NETBIOS {
-    USHORT  NetbiosNameType;
-    UCHAR   NetbiosName[16];
-} TDI_ADDRESS_NETBIOS, *PTDI_ADDRESS_NETBIOS;
-
-#define TDI_ADDRESS_LENGTH_NETBIOS  sizeof(TDI_ADDRESS_NETBIOS)
-
-typedef struct _TDI_ADDRESS_NETBIOS_EX {
-    UCHAR               EndpointName[16];
-    TDI_ADDRESS_NETBIOS NetbiosAddress;
-} TDI_ADDRESS_NETBIOS_EX, *PTDI_ADDRESS_NETBIOS_EX;
-
-#define TDI_ADDRESS_LENGTH_NETBIOS_EX   sizeof(TDI_ADDRESS_NETBIOS_EX)
-
-/* TDI_ADDRESS_NETONE.NetoneNameType constants */
-#define TDI_ADDRESS_NETONE_TYPE_UNIQUE  0x0000
-#define TDI_ADDRESS_NETONE_TYPE_ROTORED 0x0001
-
-typedef struct _TDI_ADDRESS_NETONE {
-    USHORT  NetoneNameType;
-    UCHAR   NetoneName[20];
-} TDI_ADDRESS_NETONE, *PTDI_ADDRESS_NETONE;
-
-#define TDI_ADDRESS_LENGTH_NETONE   sizeof(TDI_ADDRESS_NETONE)
-
-typedef struct _TDI_ADDRESS_NS
-{
-    ULONG   NetworkAddress;
-    UCHAR   NodeAddress[6];
-    USHORT  Socket;
-} TDI_ADDRESS_NS, *PTDI_ADDRESS_NS;
-
-#define TDI_ADDRESS_LENGTH_NS   sizeof(TDI_ADDRESS_NS)
-
-#define ISO_MAX_ADDR_LENGTH 64
-
-/* TDI_ADDRESS_OSI_TSAP.tp_addr_type constants */
-#define ISO_HIERARCHICAL        0
-#define ISO_NON_HIERARCHICAL    1
-
-typedef struct _TDI_ADDRESS_OSI_TSAP {
-    USHORT  tp_addr_type;
-    USHORT  tp_taddr_len;
-    USHORT  tp_tsel_len;
-    UCHAR   tp_addr[ISO_MAX_ADDR_LENGTH];
-} TDI_ADDRESS_OSI_TSAP, *PTDI_ADDRESS_OSI_TSAP;
-
-#define TDI_ADDRESS_LENGTH_OSI_TSAP sizeof(TDI_ADDRESS_OSI_TSAP)
-
-typedef struct _TDI_ADDRESS_VNS {
-    UCHAR  net_address[4];
-    UCHAR  subnet_addr[2];
-    UCHAR  port[2];
-    UCHAR  hops;
-    UCHAR  filler[5];
-} TDI_ADDRESS_VNS, *PTDI_ADDRESS_VNS;
-
-#define TDI_ADDRESS_LENGTH_VNS  sizeof(TDI_ADDRESS_VNS)
-
-typedef struct _TDI_ADDRESS_IP6 {
-  USHORT  sin6_port;
-  ULONG  sin6_flowinfo;
-  USHORT  sin6_addr[8];
-  ULONG  sin6_scope_id;
-} TDI_ADDRESS_IP6, *PTDI_ADDRESS_IP6;
-
-#define TDI_ADDRESS_LENGTH_IP6            sizeof(TDI_ADDRESS_IP6)
-
-enum eNameBufferType {
-       NBT_READONLY = 0,
-       NBT_WRITEONLY,
-       NBT_READWRITE,
-       NBT_WRITTEN
-};
-
-typedef struct _TDI_ADDRESS_NETBIOS_UNICODE_EX {
-  USHORT  NetbiosNameType;
-  enum eNameBufferType  NameBufferType;
-  UNICODE_STRING  EndpointName;
-  UNICODE_STRING  RemoteName;
-  WCHAR  EndpointBuffer[17];
-  WCHAR  RemoteNameBuffer[1];
-} TDI_ADDRESS_NETBIOS_UNICODE_EX, *PTDI_ADDRESS_NETBIOS_UNICODE_EX;
-
-
-typedef struct _TDI_CONNECT_REQUEST {
-    TDI_REQUEST     Request;
-    PTDI_CONNECTION_INFORMATION RequestConnectionInformation;
-    PTDI_CONNECTION_INFORMATION ReturnConnectionInformation;
-    LARGE_INTEGER   Timeout;
-} TDI_REQUEST_CONNECT, *PTDI_REQUEST_CONNECT;
-
-typedef struct _TDI_REQUEST_ACCEPT {
-    TDI_REQUEST Request;
-    PTDI_CONNECTION_INFORMATION RequestConnectionInformation;
-    PTDI_CONNECTION_INFORMATION ReturnConnectionInformation;
-} TDI_REQUEST_ACCEPT, *PTDI_REQUEST_ACCEPT;
-
-typedef struct _TDI_REQUEST_LISTEN {
-    TDI_REQUEST Request;
-    PTDI_CONNECTION_INFORMATION RequestConnectionInformation;
-    PTDI_CONNECTION_INFORMATION ReturnConnectionInformation;
-    USHORT      ListenFlags;
-} TDI_REQUEST_LISTEN, *PTDI_REQUEST_LISTEN;
-
-typedef struct _TDI_DISCONNECT_REQUEST {
-    TDI_REQUEST     Request;
-    LARGE_INTEGER   Timeout;
-} TDI_REQUEST_DISCONNECT, *PTDI_REQUEST_DISCONNECT;
-
-typedef struct _TDI_REQUEST_SEND {
-    TDI_REQUEST Request;
-    USHORT      SendFlags;
-} TDI_REQUEST_SEND, *PTDI_REQUEST_SEND;
-
-typedef struct _TDI_REQUEST_RECEIVE {
-    TDI_REQUEST Request;
-    USHORT      ReceiveFlags;
-} TDI_REQUEST_RECEIVE, *PTDI_REQUEST_RECEIVE;
-
-typedef struct _TDI_REQUEST_SEND_DATAGRAM {
-    TDI_REQUEST Request;
-    PTDI_CONNECTION_INFORMATION SendDatagramInformation;
-} TDI_REQUEST_SEND_DATAGRAM, *PTDI_REQUEST_SEND_DATAGRAM;
-
-typedef struct _TDI_REQUEST_RECEIVE_DATAGRAM {
-    TDI_REQUEST Request;
-    PTDI_CONNECTION_INFORMATION ReceiveDatagramInformation;
-    PTDI_CONNECTION_INFORMATION ReturnInformation;
-    USHORT      ReceiveFlags;
-} TDI_REQUEST_RECEIVE_DATAGRAM, *PTDI_REQUEST_RECEIVE_DATAGRAM;
-
-typedef struct _TDI_REQUEST_SET_EVENT {
-    TDI_REQUEST Request;
-    LONG        EventType;
-    PVOID       EventHandler;
-    PVOID       EventContext;
-} TDI_REQUEST_SET_EVENT_HANDLER, *PTDI_REQUEST_SET_EVENT_HANDLER;
-
-#define TDI_RECEIVE_BROADCAST           0x00000004
-#define TDI_RECEIVE_MULTICAST           0x00000008
-#define TDI_RECEIVE_PARTIAL             0x00000010
-#define TDI_RECEIVE_NORMAL              0x00000020
-#define TDI_RECEIVE_EXPEDITED           0x00000040
-#define TDI_RECEIVE_PEEK                0x00000080
-#define TDI_RECEIVE_NO_RESPONSE_EXP     0x00000100
-#define TDI_RECEIVE_COPY_LOOKAHEAD      0x00000200
-#define TDI_RECEIVE_ENTIRE_MESSAGE      0x00000400
-#define TDI_RECEIVE_AT_DISPATCH_LEVEL   0x00000800
-#define TDI_RECEIVE_CONTROL_INFO          0x00001000
-
-/* Listen flags */
-#define TDI_QUERY_ACCEPT    0x00000001
-
-/* Options used for both SendOptions and ReceiveIndicators */
-#define TDI_SEND_EXPEDITED              0x0020
-#define TDI_SEND_PARTIAL                0x0040
-#define TDI_SEND_NO_RESPONSE_EXPECTED   0x0080
-#define TDI_SEND_NON_BLOCKING           0x0100
-#define TDI_SEND_AND_DISCONNECT           0x0200
-
-/* Disconnect Flags */
-#define TDI_DISCONNECT_WAIT     0x0001
-#define TDI_DISCONNECT_ABORT    0x0002
-#define TDI_DISCONNECT_RELEASE  0x0004
-
-/* TdiRequest structure for TdiQueryInformation request */
-typedef struct _TDI_REQUEST_QUERY_INFORMATION {
-    TDI_REQUEST Request;
-    ULONG       QueryType;
-    PTDI_CONNECTION_INFORMATION RequestConnectionInformation;
-} TDI_REQUEST_QUERY_INFORMATION, *PTDI_REQUEST_QUERY_INFORMATION;
-
-/* TdiRequest structure for TdiSetInformation request */
-typedef struct _TDI_REQUEST_SET_INFORMATION {
-    TDI_REQUEST Request;
-    ULONG       SetType;
-    PTDI_CONNECTION_INFORMATION RequestConnectionInformation;
-} TDI_REQUEST_SET_INFORMATION, *PTDI_REQUEST_SET_INFORMATION;
-
-typedef TDI_REQUEST_SET_INFORMATION  TDI_REQ_SET_INFORMATION, *PTDI_REQ_SET_INFORMATION;
-
-typedef union _TDI_REQUEST_TYPE {
-    TDI_REQUEST_ACCEPT              TdiAccept;
-    TDI_REQUEST_CONNECT             TdiConnect;
-    TDI_REQUEST_DISCONNECT          TdiDisconnect;
-    TDI_REQUEST_LISTEN              TdiListen;
-    TDI_REQUEST_QUERY_INFORMATION   TdiQueryInformation;
-    TDI_REQUEST_RECEIVE             TdiReceive;
-    TDI_REQUEST_RECEIVE_DATAGRAM    TdiReceiveDatagram;
-    TDI_REQUEST_SEND                TdiSend;
-    TDI_REQUEST_SEND_DATAGRAM       TdiSendDatagram;
-    TDI_REQUEST_SET_EVENT_HANDLER   TdiSetEventHandler;
-    TDI_REQUEST_SET_INFORMATION     TdiSetInformation;
-} TDI_REQUEST_TYPE, *PTDI_REQUEST_TYPE;
-
-
-/* Query information types */
-
-/* Generic query info types that must be supported by all transports */
-#define TDI_QUERY_BROADCAST_ADDRESS     0x00000001
-#define TDI_QUERY_PROVIDER_INFO         0x00000002
-#define TDI_QUERY_ADDRESS_INFO          0x00000003
-#define TDI_QUERY_CONNECTION_INFO       0x00000004
-#define TDI_QUERY_PROVIDER_STATISTICS   0x00000005
-#define TDI_QUERY_DATAGRAM_INFO         0x00000006
-#define TDI_QUERY_DATA_LINK_ADDRESS     0x00000007
-#define TDI_QUERY_NETWORK_ADDRESS       0x00000008
-#define TDI_QUERY_MAX_DATAGRAM_INFO     0x00000009
-
-/* Netbios specific query information types */
-#define TDI_QUERY_ADAPTER_STATUS        0x00000100
-#define TDI_QUERY_SESSION_STATUS        0x00000200
-#define TDI_QUERY_FIND_NAME             0x00000300
-
-typedef struct _TA_APPLETALK_ADDR {
-    LONG    TAAddressCount;
-    struct  _AddrAtalk {
-        USHORT                  AddressLength;
-        USHORT                  AddressType;
-        TDI_ADDRESS_APPLETALK   Address[1];
-    } Address[1];
-} TA_APPLETALK_ADDRESS, *PTA_APPLETALK_ADDRESS;
-
-typedef struct _TA_ADDRESS_IP {
-    LONG    TAAddressCount;
-    struct  _AddrIp {
-        USHORT          AddressLength;
-        USHORT          AddressType;
-        TDI_ADDRESS_IP  Address[1];
-    } Address[1];
-} TA_IP_ADDRESS, *PTA_IP_ADDRESS;
-
-typedef struct _TA_ADDRESS_IPX {
-    LONG    TAAddressCount;
-    struct  _AddrIpx {
-        USHORT           AddressLength;
-        USHORT           AddressType;
-        TDI_ADDRESS_IPX Address[1];
-    } Address[1];
-} TA_IPX_ADDRESS, *PTA_IPX_ADDRESS;
-
-typedef struct _TA_NETBIOS_ADDRESS {
-    LONG    TAAddressCount;
-    struct _Addr{
-        USHORT              AddressLength;
-        USHORT              AddressType;
-        TDI_ADDRESS_NETBIOS Address[1];
-    } Address[1];
-} TA_NETBIOS_ADDRESS, *PTA_NETBIOS_ADDRESS;
-
-typedef struct _TA_ADDRESS_NS {
-    LONG    TAAddressCount;
-    struct  _AddrNs {
-        USHORT          AddressLength;
-        USHORT          AddressType;
-        TDI_ADDRESS_NS  Address[1];
-    } Address[1];
-} TA_NS_ADDRESS, *PTA_NS_ADDRESS;
-
-typedef struct _TA_ADDRESS_VNS {
-    LONG    TAAddressCount;
-    struct  _AddrVns {
-        USHORT          AddressLength;
-        USHORT          AddressType;
-        TDI_ADDRESS_VNS Address[1];
-    } Address[1];
-} TA_VNS_ADDRESS, *PTA_VNS_ADDRESS;
-
-typedef struct _TA_ADDRESS_IP6 {
-  LONG  TAAddressCount;
-  struct _AddrIp6 {
-    USHORT  AddressLength;
-    USHORT  AddressType;
-    TDI_ADDRESS_IP6  Address[1];
-  } Address [1];
-} TA_IP6_ADDRESS, *PTA_IP6_ADDRESS;
-
-typedef struct _TA_ADDRESS_NETBIOS_UNICODE_EX {
-  LONG  TAAddressCount;
-  struct _AddrNetbiosWCharEx {
-    USHORT  AddressLength;
-    USHORT  AddressType;
-    TDI_ADDRESS_NETBIOS_UNICODE_EX  Address[1];
-  } Address [1];
-} TA_NETBIOS_UNICODE_EX_ADDRESS, *PTA_NETBIOS_UNICODE_EX_ADDRESS;
-
-
-/* Structures used for TdiQueryInformation and TdiSetInformation */
-
-typedef struct _TDI_ENDPOINT_INFO {
-    ULONG   State;
-    ULONG   Event;
-    ULONG   TransmittedTsdus;
-    ULONG   ReceivedTsdus;
-    ULONG   TransmissionErrors;
-    ULONG   ReceiveErrors;
-    ULONG   MinimumLookaheadData;
-    ULONG   MaximumLookaheadData;
-    ULONG   PriorityLevel;
-    ULONG   SecurityLevel;
-    ULONG   SecurityCompartment;
-} TDI_ENDPOINT_INFO, *PTDI_ENDPOINT_INFO;
-
-typedef struct _TDI_CONNECTION_INFO {
-    ULONG           State;
-    ULONG           Event; 
-    ULONG           TransmittedTsdus;
-    ULONG           ReceivedTsdus;
-    ULONG           TransmissionErrors;
-    ULONG           ReceiveErrors;
-    LARGE_INTEGER   Throughput;
-    LARGE_INTEGER   Delay;
-    ULONG           SendBufferSize;
-    ULONG           ReceiveBufferSize;
-    BOOLEAN         Unreliable;
-} TDI_CONNECTION_INFO, *PTDI_CONNECTION_INFO;
-
-typedef struct _TDI_DATAGRAM_INFO {
-    ULONG   MaximumDatagramBytes;
-    ULONG   MaximumDatagramCount;
-} TDI_DATAGRAM_INFO, *PTDI_DATAGRAM_INFO;
-
-typedef struct _TDI_MAX_DATAGRAM_INFO {
-    ULONG   MaxDatagramSize;
-} TDI_MAX_DATAGRAM_INFO, *PTDI_MAX_DATAGRAM_INFO;
-
-typedef struct _TDI_PROVIDER_INFO {
-    ULONG           Version;
-    ULONG           MaxSendSize;
-    ULONG           MaxConnectionUserData;
-    ULONG           MaxDatagramSize;
-    ULONG           ServiceFlags;
-    ULONG           MinimumLookaheadData;
-    ULONG           MaximumLookaheadData;
-    ULONG           NumberOfResources;
-    LARGE_INTEGER   StartTime;
-} TDI_PROVIDER_INFO, *PTDI_PROVIDER_INFO;
-
-#define TDI_SERVICE_CONNECTION_MODE     0x00000001
-#define TDI_SERVICE_ORDERLY_RELEASE     0x00000002
-#define TDI_SERVICE_CONNECTIONLESS_MODE 0x00000004
-#define TDI_SERVICE_ERROR_FREE_DELIVERY 0x00000008
-#define TDI_SERVICE_SECURITY_LEVEL      0x00000010
-#define TDI_SERVICE_BROADCAST_SUPPORTED 0x00000020
-#define TDI_SERVICE_MULTICAST_SUPPORTED 0x00000040
-#define TDI_SERVICE_DELAYED_ACCEPTANCE  0x00000080
-#define TDI_SERVICE_EXPEDITED_DATA      0x00000100
-#define TDI_SERVICE_INTERNAL_BUFFERING  0x00000200
-#define TDI_SERVICE_ROUTE_DIRECTED      0x00000400
-#define TDI_SERVICE_NO_ZERO_LENGTH      0x00000800
-#define TDI_SERVICE_POINT_TO_POINT      0x00001000
-#define TDI_SERVICE_MESSAGE_MODE        0x00002000
-#define TDI_SERVICE_HALF_DUPLEX         0x00004000
-#define TDI_SERVICE_DGRAM_CONNECTION    0x00008000
-#define TDI_SERVICE_FORCE_ACCESS_CHECK  0x00010000
-#define TDI_SERVICE_SEND_AND_DISCONNECT 0x00020000
-#define TDI_SERVICE_DIRECT_ACCEPT       0x00040000
-#define TDI_SERVICE_ACCEPT_LOCAL_ADDR   0x00080000
-
-typedef struct _TDI_PROVIDER_RESOURCE_STATS {
-    ULONG   ResourceId;
-    ULONG   MaximumResourceUsed;
-    ULONG   AverageResourceUsed;
-    ULONG   ResourceExhausted;
-} TDI_PROVIDER_RESOURCE_STATS, *PTDI_PROVIDER_RESOURCE_STATS;
-
-typedef struct _TDI_PROVIDER_STATISTICS {
-    ULONG           Version;
-    ULONG           OpenConnections;
-    ULONG           ConnectionsAfterNoRetry;
-    ULONG           ConnectionsAfterRetry;
-    ULONG           LocalDisconnects;
-    ULONG           RemoteDisconnects;
-    ULONG           LinkFailures;
-    ULONG           AdapterFailures;
-    ULONG           SessionTimeouts;
-    ULONG           CancelledConnections;
-    ULONG           RemoteResourceFailures;
-    ULONG           LocalResourceFailures;
-    ULONG           NotFoundFailures;
-    ULONG           NoListenFailures;
-    ULONG           DatagramsSent;
-    LARGE_INTEGER   DatagramBytesSent;
-    ULONG           DatagramsReceived;
-    LARGE_INTEGER   DatagramBytesReceived;
-    ULONG           PacketsSent;
-    ULONG           PacketsReceived;
-    ULONG           DataFramesSent;
-    LARGE_INTEGER   DataFrameBytesSent;
-    ULONG           DataFramesReceived;
-    LARGE_INTEGER   DataFrameBytesReceived;
-    ULONG           DataFramesResent;
-    LARGE_INTEGER   DataFrameBytesResent;
-    ULONG           DataFramesRejected;
-    LARGE_INTEGER   DataFrameBytesRejected;
-    ULONG           ResponseTimerExpirations;
-    ULONG           AckTimerExpirations;
-    ULONG           MaximumSendWindow;
-    ULONG           AverageSendWindow;
-    ULONG           PiggybackAckQueued;
-    ULONG           PiggybackAckTimeouts;
-    LARGE_INTEGER   WastedPacketSpace;
-    ULONG           WastedSpacePackets;
-    ULONG           NumberOfResources;
-  TDI_PROVIDER_RESOURCE_STATS  ResourceStats[1];
-} TDI_PROVIDER_STATISTICS, *PTDI_PROVIDER_STATISTICS;
-
-#define TDI_EVENT_CONNECT                 0
-#define TDI_EVENT_DISCONNECT              1
-#define TDI_EVENT_ERROR                   2
-#define TDI_EVENT_RECEIVE                 3
-#define TDI_EVENT_RECEIVE_DATAGRAM        4
-#define TDI_EVENT_RECEIVE_EXPEDITED       5
-#define TDI_EVENT_SEND_POSSIBLE           6
-
-typedef struct _TDI_REQUEST_ASSOCIATE {
-  TDI_REQUEST  Request;
-  HANDLE  AddressHandle;
-} TDI_REQUEST_ASSOCIATE_ADDRESS, *PTDI_REQUEST_ASSOCIATE_ADDRESS;
-
-#define NDIS_PACKET_POOL_TAG_FOR_NWLNKIPX   'iPDN'
-#define NDIS_PACKET_POOL_TAG_FOR_NWLNKSPX   'sPDN'
-#define NDIS_PACKET_POOL_TAG_FOR_NWLNKNB    'nPDN'
-#define NDIS_PACKET_POOL_TAG_FOR_TCPIP      'tPDN'
-#define NDIS_PACKET_POOL_TAG_FOR_NBF        'bPDN'
-#define NDIS_PACKET_POOL_TAG_FOR_APPLETALK  'aPDN'
-
-#pragma pack(pop)
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* __TDI_H */
diff --git a/reactos/include/net/tdiinfo.h b/reactos/include/net/tdiinfo.h
deleted file mode 100644 (file)
index c9e4ac0..0000000
+++ /dev/null
@@ -1,253 +0,0 @@
-/*
- * tdiinfo.h
- *
- * TDI set and query information interface
- *
- * This file is part of the w32api package.
- *
- * Contributors:
- *   Created by Casper S. Hornstrup <chorns@users.sourceforge.net>
- *
- * THIS SOFTWARE IS NOT COPYRIGHTED
- *
- * This source code is offered for use in the public domain. You may
- * use, modify or distribute it freely.
- *
- * This code is distributed in the hope that it will be useful but
- * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
- * DISCLAIMED. This includes but is not limited to warranties of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- *
- */
-
-#ifndef __TDIINFO_H
-#define __TDIINFO_H
-
-#if __GNUC__ >=3
-#pragma GCC system_header
-#endif
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#pragma pack(push,4)
-
-#include "ntddk.h"
-
-#ifndef TDI_SUCCESS
-#define TDI_SUCCESS 0
-#endif/*TDI_SUCCESS*/
-
-typedef struct TDIEntityID {
-    ULONG   tei_entity;
-    ULONG   tei_instance;
-} TDIEntityID;
-
-#define        MAX_TDI_ENTITIES                        512
-#define INVALID_ENTITY_INSTANCE     -1
-#define        GENERIC_ENTITY              0
-#define        ENTITY_LIST_ID              0
-#define        ENTITY_TYPE_ID              1
-
-#define        AT_ENTITY                   0x280
-#define        CL_NL_ENTITY                0x301
-#define        CL_TL_ENTITY                0x401
-#define        CO_NL_ENTITY                0x300
-#define        CO_TL_ENTITY                0x400
-#define        ER_ENTITY                   0x380
-#define        IF_ENTITY                   0x200
-
-#define        AT_ARP                                          0x280
-#define        AT_NULL                                         0x282
-#define        CL_TL_NBF                                       0x401
-#define        CL_TL_UDP                                       0x403
-#define        CL_NL_IPX                                       0x301
-#define        CL_NL_IP                                        0x303
-#define        CO_TL_NBF                                       0x400
-#define        CO_TL_SPX                                       0x402
-#define        CO_TL_TCP                                       0x404
-#define        CO_TL_SPP                                       0x406
-#define        ER_ICMP                                         0x380
-#define        IF_GENERIC                                      0x200
-#define        IF_MIB                                          0x202
-
-/* ID to use for requesting an IFEntry for an interface */
-#define IF_MIB_STATS_ID            1
-
-/* ID to use for requesting an IPSNMPInfo for an interface */
-#define IP_MIB_STATS_ID            1 /* Hmm.  I'm not sure I like this */
-
-/* ID to use for requesting the route table */
-#define IP_MIB_ROUTETABLE_ENTRY_ID  0x101
-#define IP_MIB_ADDRTABLE_ENTRY_ID 102
-
-/* TDIObjectID.toi_class constants */
-#define        INFO_CLASS_GENERIC          0x100
-#define        INFO_CLASS_PROTOCOL             0x200
-#define        INFO_CLASS_IMPLEMENTATION   0x300
-
-/* TDIObjectID.toi_type constants */
-#define        INFO_TYPE_PROVIDER          0x100
-#define        INFO_TYPE_ADDRESS_OBJECT    0x200
-#define        INFO_TYPE_CONNECTION        0x300
-
-typedef struct _TDIObjectID {
-    TDIEntityID        toi_entity;
-    ULONG   toi_class;
-       ULONG   toi_type;
-       ULONG   toi_id;
-} TDIObjectID;
-
-#define MAX_PHYSADDR_SIZE           010
-
-/* Basic interface information like from SIOCGIF* */
-/* 0x5c bytes without description tail */
-typedef struct _IFEntry {
-    ULONG if_index;
-    ULONG if_type;
-    ULONG if_mtu;
-    ULONG if_speed;
-    ULONG if_physaddrlen;
-    UCHAR if_physaddr[MAX_PHYSADDR_SIZE];
-    ULONG if_adminstatus;
-    ULONG if_operstatus;
-    ULONG if_lastchange;
-    ULONG if_inoctets;
-    ULONG if_inucastpkts;
-    ULONG if_innucastpkts;
-    ULONG if_indiscards;
-    ULONG if_inerrors;
-    ULONG if_inunknownprotos;
-    ULONG if_outoctets;
-    ULONG if_outucastpkts;
-    ULONG if_outnucastpkts;
-    ULONG if_outdiscards;
-    ULONG if_outerrors;
-    ULONG if_outqlen;
-    ULONG if_descrlen;
-    UCHAR if_descr[1];
-} IFEntry;
-
-/* Control information like from /proc/sys/net/ipv4/... */
-/* 0x58 bytes */
-#if 1
-typedef struct _IPSNMPInfo {
-    ULONG ipsi_index;
-    ULONG ipsi_forwarding;
-    ULONG ipsi_defaultttl;
-    ULONG ipsi_inreceives;
-    ULONG ipsi_inhdrerrors;
-    ULONG ipsi_inaddrerrors;
-    ULONG ipsi_inunknownprotos;
-    ULONG ipsi_indiscards;
-    ULONG ipsi_indelivers;
-    ULONG ipsi_outrequests;
-    ULONG ipsi_routingdiscards;
-    ULONG ipsi_outdiscards;
-    ULONG ipsi_outnoroutes;
-    ULONG ipsi_reasmtimeout;
-    ULONG ipsi_reasmreqds;
-    ULONG ipsi_reasmoks;
-    ULONG ipsi_reasmfails;
-    ULONG ipsi_fragoks;
-    ULONG ipsi_fragfails;
-    ULONG ipsi_fragcreates;
-    ULONG ipsi_numif;
-    ULONG ipsi_numaddr;
-    ULONG ipsi_numroutes;
-} IPSNMPInfo;
-#else
-typedef struct _IPSNMPInfo {
-    ULONG ipsi_forwarding;
-    ULONG ipsi_defaultttl;
-    ULONG ipsi_inreceives;
-    ULONG ipsi_inhdrerrors;
-    ULONG ipsi_inaddrerrors;
-    ULONG ipsi_inunknownprotos;
-    ULONG ipsi_indiscards;
-    ULONG ipsi_indelivers;
-    ULONG ipsi_outrequests;
-    ULONG ipsi_routingdiscards;
-    ULONG ipsi_outdiscards;
-    ULONG ipsi_outnoroutes;
-    ULONG ipsi_reasmtimeout;
-    ULONG ipsi_reasmreqds;
-    ULONG ipsi_reasmoks;
-    ULONG ipsi_reasmfails;
-    ULONG ipsi_fragoks;
-    ULONG ipsi_fragfails;
-    ULONG ipsi_fragcreates;
-    ULONG ipsi_numif;
-    ULONG ipsi_numaddr;
-    ULONG ipsi_numroutes;
-} IPSNMPInfo;
-#endif
-
-// BEGIN ORIGINAL SOURCE INFORMATION --
-// Gets ip info for the current interface list.
-
-// Tom Sanfilippo
-// tsanfilippo@earthlink.net
-// December 12, 1999
-
-// Thanks are due to Thomas F. Divine <tdivine@pcausa.com>
-// for pointing out the updated wshsmple in the NT4DDK.
-// The headers in that sample allowed the input parameters
-// to finally be discovered.
-// END ORIGINAL SOURCE INFORMATION --
-
-typedef struct _IPRouteEntry {
-    ULONG ire_dest;
-    ULONG ire_index;            //matches if_index in IFEntry and iae_index in IPAddrEntry
-    ULONG ire_metric;
-    ULONG ire_unk1;             //??
-    ULONG ire_unk2;             //??
-    ULONG ire_unk3;             //??
-    ULONG ire_gw;
-    ULONG ire_unk4;             //??
-    ULONG ire_unk5;             //??
-    ULONG ire_unk6;             //??
-    ULONG ire_mask;
-    ULONG ire_unk7;             //??
-    ULONG ire_unk8;             //??
-} IPRouteEntry;
-
-typedef struct _IPAddrEntry {
-    ULONG iae_addr;
-    ULONG iae_index;
-    ULONG iae_mask;
-    ULONG iae_bcastaddr;
-    ULONG iae_reasmsize;
-    ULONG iae_context;
-    ULONG iae_pad;
-} IPAddrEntry;
-
-#define        CONTEXT_SIZE                   16
-#define MAX_ADAPTER_DESCRIPTION_LENGTH 64 /* guess */
-
-typedef struct _TCP_REQUEST_QUERY_INFORMATION_EX {
-       TDIObjectID ID;
-       UCHAR       Context[CONTEXT_SIZE];
-} TCP_REQUEST_QUERY_INFORMATION_EX, *PTCP_REQUEST_QUERY_INFORMATION_EX;
-
-#if defined(_WIN64)
-typedef struct _TCP_REQUEST_QUERY_INFORMATION_EX32 {
-  TDIObjectID  ID;
-  ULONG32  Context[CONTEXT_SIZE / sizeof(ULONG32)];
-} TCP_REQUEST_QUERY_INFORMATION_EX32, *PTCP_REQUEST_QUERY_INFORMATION_EX32;
-#endif /* _WIN64 */
-
-typedef struct _TCP_REQUEST_SET_INFORMATION_EX {
-       TDIObjectID ID;
-       UINT        BufferSize;
-       UCHAR       Buffer[1];
-} TCP_REQUEST_SET_INFORMATION_EX, *PTCP_REQUEST_SET_INFORMATION_EX;
-
-#pragma pack(pop)
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* __TDIINFO_H */
diff --git a/reactos/include/net/tdikrnl.h b/reactos/include/net/tdikrnl.h
deleted file mode 100644 (file)
index 2d2c52a..0000000
+++ /dev/null
@@ -1,1173 +0,0 @@
-/*
- * tdikrnl.h
- *
- * TDI kernel mode definitions
- *
- * This file is part of the w32api package.
- *
- * Contributors:
- *   Created by Casper S. Hornstrup <chorns@users.sourceforge.net>
- *
- * THIS SOFTWARE IS NOT COPYRIGHTED
- *
- * This source code is offered for use in the public domain. You may
- * use, modify or distribute it freely.
- *
- * This code is distributed in the hope that it will be useful but
- * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
- * DISCLAIMED. This includes but is not limited to warranties of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- *
- */
-
-#ifndef __TDIKRNL_H
-#define __TDIKRNL_H
-
-#if __GNUC__ >=3
-#pragma GCC system_header
-#endif
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#pragma pack(push,4)
-
-#include "ntddk.h"
-#include "tdi.h"
-
-#ifndef STDCALL
-#define STDCALL
-#endif
-#define DDKAPI STDCALL
-
-#if defined(_TDI_)
-//  #define TDIKRNLAPI DECLSPEC_EXPORT
-  #define TDIKRNLAPI
-#else
-//  #define TDIKRNLAPI DECLSPEC_IMPORT
-  #define TDIKRNLAPI
-#endif
-
-
-typedef struct _TDI_REQUEST_KERNEL {
-    ULONG   RequestFlags;
-    PTDI_CONNECTION_INFORMATION RequestConnectionInformation;
-    PTDI_CONNECTION_INFORMATION ReturnConnectionInformation;
-    PVOID   RequestSpecific;
-} TDI_REQUEST_KERNEL, *PTDI_REQUEST_KERNEL;
-
-/* Request codes */
-#define TDI_ASSOCIATE_ADDRESS       0x01
-#define TDI_DISASSOCIATE_ADDRESS    0x02
-#define TDI_CONNECT                 0x03
-#define TDI_LISTEN                  0x04
-#define TDI_ACCEPT                  0x05
-#define TDI_DISCONNECT              0x06
-#define TDI_SEND                    0x07
-#define TDI_RECEIVE                 0x08
-#define TDI_SEND_DATAGRAM           0x09
-#define TDI_RECEIVE_DATAGRAM        0x0A
-#define TDI_SET_EVENT_HANDLER       0x0B
-#define TDI_QUERY_INFORMATION       0x0C
-#define TDI_SET_INFORMATION         0x0D
-#define TDI_ACTION                  0x0E
-
-#define TDI_DIRECT_SEND             0x27
-#define TDI_DIRECT_SEND_DATAGRAM    0x29
-
-#define TDI_TRANSPORT_ADDRESS_FILE  1
-#define TDI_CONNECTION_FILE         2
-#define TDI_CONTROL_CHANNEL_FILE    3
-
-/* Internal TDI IOCTLS */
-#define IOCTL_TDI_QUERY_DIRECT_SEND_HANDLER   _TDI_CONTROL_CODE(0x80, METHOD_NEITHER)
-#define IOCTL_TDI_QUERY_DIRECT_SENDDG_HANDLER _TDI_CONTROL_CODE(0x81, METHOD_NEITHER)
-
-/* TdiAssociateAddress */
-typedef struct _TDI_REQUEST_KERNEL_ASSOCIATE {
-    HANDLE AddressHandle;
-} TDI_REQUEST_KERNEL_ASSOCIATE, *PTDI_REQUEST_KERNEL_ASSOCIATE;
-
-/* TdiDisassociateAddress */
-typedef TDI_REQUEST_KERNEL TDI_REQUEST_KERNEL_DISASSOCIATE,
-    *PTDI_REQUEST_KERNEL_DISASSOCIATE;
-
-/* TdiAccept */
-typedef struct _TDI_REQUEST_KERNEL_ACCEPT {
-    PTDI_CONNECTION_INFORMATION RequestConnectionInformation;
-    PTDI_CONNECTION_INFORMATION ReturnConnectionInformation;
-} TDI_REQUEST_KERNEL_ACCEPT, *PTDI_REQUEST_KERNEL_ACCEPT;
-
-/* TdiConnect */
-typedef TDI_REQUEST_KERNEL TDI_REQUEST_KERNEL_CONNECT,
-  *PTDI_REQUEST_KERNEL_CONNECT;
-
-/* TdiDisconnect */
-typedef TDI_REQUEST_KERNEL TDI_REQUEST_KERNEL_DISCONNECT,
-  *PTDI_REQUEST_KERNEL_DISCONNECT;
-
-/* TdiListen */
-typedef TDI_REQUEST_KERNEL TDI_REQUEST_KERNEL_LISTEN,
-  *PTDI_REQUEST_KERNEL_LISTEN;
-
-/* TdiReceive */
-typedef struct _TDI_REQUEST_KERNEL_RECEIVE {
-    ULONG   ReceiveLength;
-    ULONG   ReceiveFlags;
-} TDI_REQUEST_KERNEL_RECEIVE, *PTDI_REQUEST_KERNEL_RECEIVE;
-
-/* TdiReceiveDatagram */
-typedef struct _TDI_REQUEST_KERNEL_RECEIVEDG {
-    ULONG   ReceiveLength;
-    PTDI_CONNECTION_INFORMATION ReceiveDatagramInformation;
-    PTDI_CONNECTION_INFORMATION ReturnDatagramInformation;
-    ULONG   ReceiveFlags;
-} TDI_REQUEST_KERNEL_RECEIVEDG, *PTDI_REQUEST_KERNEL_RECEIVEDG;
-
-/* TdiSend */
-typedef struct _TDI_REQUEST_KERNEL_SEND {
-    ULONG   SendLength;
-    ULONG   SendFlags;
-} TDI_REQUEST_KERNEL_SEND, *PTDI_REQUEST_KERNEL_SEND;
-
-/* TdiSendDatagram */
-typedef struct _TDI_REQUEST_KERNEL_SENDDG {
-    ULONG   SendLength;
-    PTDI_CONNECTION_INFORMATION SendDatagramInformation;
-} TDI_REQUEST_KERNEL_SENDDG, *PTDI_REQUEST_KERNEL_SENDDG;
-
-/* TdiSetEventHandler */
-typedef struct _TDI_REQUEST_KERNEL_SET_EVENT {
-    LONG    EventType;
-    PVOID   EventHandler;
-    PVOID   EventContext;
-} TDI_REQUEST_KERNEL_SET_EVENT, *PTDI_REQUEST_KERNEL_SET_EVENT;
-
-/* TdiQueryInformation */
-typedef struct _TDI_REQUEST_KERNEL_QUERY_INFO {
-    LONG    QueryType;
-    PTDI_CONNECTION_INFORMATION RequestConnectionInformation;
-} TDI_REQUEST_KERNEL_QUERY_INFORMATION, *PTDI_REQUEST_KERNEL_QUERY_INFORMATION;
-
-/* TdiSetInformation */
-typedef struct _TDI_REQUEST_KERNEL_SET_INFO {
-    LONG    SetType;
-    PTDI_CONNECTION_INFORMATION RequestConnectionInformation;
-} TDI_REQUEST_KERNEL_SET_INFORMATION, *PTDI_REQUEST_KERNEL_SET_INFORMATION;
-
-
-/* Event types */
-#define TDI_EVENT_CONNECT                   0
-#define TDI_EVENT_DISCONNECT                1
-#define TDI_EVENT_ERROR                     2
-#define TDI_EVENT_RECEIVE                   3
-#define TDI_EVENT_RECEIVE_DATAGRAM          4
-#define TDI_EVENT_RECEIVE_EXPEDITED         5
-#define TDI_EVENT_SEND_POSSIBLE             6
-#define TDI_EVENT_CHAINED_RECEIVE           7
-#define TDI_EVENT_CHAINED_RECEIVE_DATAGRAM  8
-#define TDI_EVENT_CHAINED_RECEIVE_EXPEDITED 9
-#define TDI_EVENT_ERROR_EX                  10
-
-typedef NTSTATUS 
-(*PTDI_IND_CONNECT)(
-    IN PVOID  TdiEventContext,
-    IN LONG   RemoteAddressLength,
-    IN PVOID  RemoteAddress,
-    IN LONG   UserDataLength,
-    IN PVOID  UserData,
-    IN LONG   OptionsLength,
-    IN PVOID  Options,
-    OUT CONNECTION_CONTEXT  *ConnectionContext,
-    OUT PIRP  *AcceptIrp);
-
-TDIKRNLAPI
-NTSTATUS
-DDKAPI
-TdiDefaultConnectHandler(
-    IN PVOID  TdiEventContext,
-    IN LONG   RemoteAddressLength,
-    IN PVOID  RemoteAddress,
-    IN LONG   UserDataLength,
-    IN PVOID  UserData,
-    IN LONG   OptionsLength,
-    IN PVOID  Options,
-    OUT CONNECTION_CONTEXT *ConnectionContext,
-    OUT PIRP  *AcceptIrp);
-
-typedef NTSTATUS 
-(*PTDI_IND_DISCONNECT)(
-    IN PVOID  TdiEventContext,
-    IN CONNECTION_CONTEXT  ConnectionContext,
-    IN LONG   DisconnectDataLength,
-    IN PVOID  DisconnectData,
-    IN LONG   DisconnectInformationLength,
-    IN PVOID  DisconnectInformation,
-    IN ULONG  DisconnectFlags);
-
-TDIKRNLAPI
-NTSTATUS
-DDKAPI
-TdiDefaultDisconnectHandler(
-    IN PVOID  TdiEventContext,
-    IN CONNECTION_CONTEXT  ConnectionContext,
-    IN LONG   DisconnectDataLength,
-    IN PVOID  DisconnectData,
-    IN LONG   DisconnectInformationLength,
-    IN PVOID  DisconnectInformation,
-    IN ULONG  DisconnectFlags);
-
-typedef NTSTATUS 
-(*PTDI_IND_ERROR)(
-    IN PVOID     TdiEventContext,
-    IN NTSTATUS  Status);
-
-typedef NTSTATUS DDKAPI
-(*PTDI_IND_ERROR_EX)(
-  IN PVOID  TdiEventContext,
-  IN NTSTATUS  Status,
-  IN PVOID  Buffer);
-
-TDIKRNLAPI
-NTSTATUS
-DDKAPI
-TdiDefaultErrorHandler(
-    IN PVOID     TdiEventContext,
-    IN NTSTATUS  Status);
-
-typedef NTSTATUS 
-(*PTDI_IND_RECEIVE)(
-    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);
-
-TDIKRNLAPI
-NTSTATUS
-DDKAPI
-TdiDefaultReceiveHandler(
-    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);
-
-typedef NTSTATUS 
-(*PTDI_IND_RECEIVE_DATAGRAM)(
-    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);
-
-TDIKRNLAPI
-NTSTATUS DDKAPI
-TdiDefaultRcvDatagramHandler(
-    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);
-
-typedef NTSTATUS 
-(*PTDI_IND_RECEIVE_EXPEDITED)(
-    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);
-
-TDIKRNLAPI
-NTSTATUS
-DDKAPI
-TdiDefaultRcvExpeditedHandler(
-    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);
-
-typedef NTSTATUS 
-(*PTDI_IND_CHAINED_RECEIVE)(
-    IN PVOID  TdiEventContext,
-    IN CONNECTION_CONTEXT  ConnectionContext,
-    IN ULONG  ReceiveFlags,
-    IN ULONG  ReceiveLength,
-    IN ULONG  StartingOffset,
-    IN PMDL   Tsdu,
-    IN PVOID  TsduDescriptor);
-
-TDIKRNLAPI
-NTSTATUS
-DDKAPI
-TdiDefaultChainedReceiveHandler(
-    IN PVOID  TdiEventContext,
-    IN CONNECTION_CONTEXT  ConnectionContext,
-    IN ULONG  ReceiveFlags,
-    IN ULONG  ReceiveLength,
-    IN ULONG  StartingOffset,
-    IN PMDL   Tsdu,
-    IN PVOID  TsduDescriptor);
-
-typedef NTSTATUS 
-(*PTDI_IND_CHAINED_RECEIVE_DATAGRAM)(
-    IN PVOID  TdiEventContext,
-    IN LONG   SourceAddressLength,
-    IN PVOID  SourceAddress,
-    IN LONG   OptionsLength,
-    IN PVOID  Options,
-    IN ULONG  ReceiveDatagramFlags,
-    IN ULONG  ReceiveDatagramLength,
-    IN ULONG  StartingOffset,
-    IN PMDL   Tsdu,
-    IN PVOID  TsduDescriptor);
-
-TDIKRNLAPI
-NTSTATUS
-DDKAPI
-TdiDefaultChainedRcvDatagramHandler(
-    IN PVOID  TdiEventContext,
-    IN LONG   SourceAddressLength,
-    IN PVOID  SourceAddress,
-    IN LONG   OptionsLength,
-    IN PVOID  Options,
-    IN ULONG  ReceiveDatagramFlags,
-    IN ULONG  ReceiveDatagramLength,
-    IN ULONG  StartingOffset,
-    IN PMDL   Tsdu,
-    IN PVOID  TsduDescriptor);
-
-typedef NTSTATUS 
-(*PTDI_IND_CHAINED_RECEIVE_EXPEDITED)(
-    IN PVOID  TdiEventContext,
-    IN CONNECTION_CONTEXT  ConnectionContext,
-    IN ULONG  ReceiveFlags,
-    IN ULONG  ReceiveLength,
-    IN ULONG  StartingOffset,
-    IN PMDL   Tsdu,
-    IN PVOID  TsduDescriptor);
-
-TDIKRNLAPI
-NTSTATUS
-DDKAPI
-TdiDefaultChainedRcvExpeditedHandler(
-    IN PVOID  TdiEventContext,
-    IN CONNECTION_CONTEXT  ConnectionContext,
-    IN ULONG  ReceiveFlags,
-    IN ULONG  ReceiveLength,
-    IN ULONG  StartingOffset,
-    IN PMDL   Tsdu,
-    IN PVOID  TsduDescriptor);
-
-typedef NTSTATUS 
-(*PTDI_IND_SEND_POSSIBLE)(
-    IN PVOID  TdiEventContext,
-    IN PVOID  ConnectionContext,
-    IN ULONG  BytesAvailable);
-
-TDIKRNLAPI
-NTSTATUS
-DDKAPI
-TdiDefaultSendPossibleHandler(
-    IN PVOID  TdiEventContext,
-    IN PVOID  ConnectionContext,
-    IN ULONG  BytesAvailable);
-
-
-
-/* Macros and functions to build IRPs */
-
-#define TdiBuildBaseIrp(                                                    \
-  bIrp, bDevObj, bFileObj, bCompRoutine, bContxt, bIrpSp, bMinor)         \
-{                                                                           \
-  bIrpSp->MajorFunction = IRP_MJ_INTERNAL_DEVICE_CONTROL;                 \
-  bIrpSp->MinorFunction = (bMinor);                                       \
-  bIrpSp->DeviceObject  = (bDevObj);                                      \
-  bIrpSp->FileObject    = (bFileObj);                                     \
-  if (bCompRoutine)                                                       \
-    IoSetCompletionRoutine(bIrp, bCompRoutine, bContxt, TRUE, TRUE, TRUE) \
-    else                                                                    \
-    IoSetCompletionRoutine(bIrp, NULL, NULL, FALSE, FALSE, FALSE);        \
-}
-
-/*
- * VOID 
- * TdiBuildAccept(
- *     IN PIRP  Irp,
- *     IN PDEVICE_OBJECT  DevObj,
- *     IN PFILE_OBJECT  FileObj,
- *     IN PVOID  CompRoutine,
- *     IN PVOID  Contxt,
- *     IN PTDI_CONNECTION_INFORMATION  RequestConnectionInfo,
- *     OUT PTDI_CONNECTION_INFORMATION  ReturnConnectionInfo);
- */
-#define TdiBuildAccept(                                               \
-    Irp, DevObj, FileObj, CompRoutine, Contxt,                        \
-    RequestConnectionInfo, ReturnConnectionInfo)                      \
-    {                                                                 \
-    PTDI_REQUEST_KERNEL_ACCEPT _Request;                              \
-    PIO_STACK_LOCATION _IrpSp;                                        \
-                                                                      \
-    _IrpSp = IoGetNextIrpStackLocation(Irp);                          \
-                                                                      \
-    TdiBuildBaseIrp(Irp, DevObj, FileObj, CompRoutine,                \
-                    Contxt, _IrpSp, TDI_ACCEPT);                      \
-                                                                      \
-    _Request = (PTDI_REQUEST_KERNEL_ACCEPT)&_IrpSp->Parameters;       \
-    _Request->RequestConnectionInformation = (RequestConnectionInfo); \
-    _Request->ReturnConnectionInformation  = (ReturnConnectionInfo);  \
-}
-
-/*
- * VOID 
- * TdiBuildAction(
- *     IN PIRP  Irp,
- *     IN PDEVICE_OBJECT  DevObj,
- *     IN PFILE_OBJECT  FileObj,
- *     IN PVOID  CompRoutine,
- *     IN PVOID  Contxt,
- *     IN PMDL  MdlAddr);
- */
-#define TdiBuildAction(                                 \
-    Irp, DevObj, FileObj, CompRoutine, Contxt, MdlAddr) \
-{                                                       \
-    PIO_STACK_LOCATION _IrpSp;                          \
-                                                        \
-    _IrpSp = IoGetNextIrpStackLocation(Irp);            \
-                                                        \
-    TdiBuildBaseIrp(Irp, DevObj, FileObj, CompRoutine,  \
-                    Contxt, _IrpSp, TDI_ACTION);        \
-                                                        \
-    (Irp)->MdlAddress = (MdlAddr);                      \
-}
-
-/*
- * VOID 
- * TdiBuildAssociateAddress(
- *    IN PIRP  Irp,
- *    IN PDEVICE_OBJECT  DevObj,
- *    IN PFILE_OBJECT  FileObj,
- *    IN PVOID  CompRoutine,
- *    IN PVOID  Contxt,
- *    IN HANDLE  AddrHandle);
- */
-#define TdiBuildAssociateAddress(                                  \
-    Irp, DevObj, FileObj, CompRoutine, Contxt, AddrHandle)         \
-{                                                                  \
-    PTDI_REQUEST_KERNEL_ASSOCIATE _Request;                        \
-    PIO_STACK_LOCATION _IrpSp;                                     \
-                                                                   \
-    _IrpSp = IoGetNextIrpStackLocation(Irp);                       \
-                                                                   \
-    TdiBuildBaseIrp(Irp, DevObj, FileObj, CompRoutine,             \
-                    Contxt, _IrpSp, TDI_ASSOCIATE_ADDRESS);        \
-                                                                   \
-    _Request = (PTDI_REQUEST_KERNEL_ASSOCIATE)&_IrpSp->Parameters; \
-    _Request->AddressHandle = (HANDLE)(AddrHandle);                \
-}
-
-/*
- * VOID
- * TdiBuildConnect(
- *    IN PIRP  Irp,
- *    IN PDEVICE_OBJECT  DevObj,
- *    IN PFILE_OBJECT  FileObj,
- *    IN PVOID  CompRoutine,
- *    IN PVOID  Contxt,
- *    IN PLARGE_INTEGER  Time,
- *    IN PTDI_CONNECTION_INFORMATION  RequestConnectionInfo,
- *    OUT PTDI_CONNECTION_INFORMATION  ReturnConnectionInfo); 
- */
-#define TdiBuildConnect(                                              \
-    Irp, DevObj, FileObj, CompRoutine, Contxt,                        \
-    Time, RequestConnectionInfo, ReturnConnectionInfo)                \
-{                                                                     \
-    PTDI_REQUEST_KERNEL _Request;                                     \
-    PIO_STACK_LOCATION _IrpSp;                                        \
-                                                                      \
-    _IrpSp = IoGetNextIrpStackLocation(Irp);                          \
-                                                                      \
-    TdiBuildBaseIrp(Irp, DevObj, FileObj, CompRoutine,                \
-                    Contxt, _IrpSp, TDI_CONNECT);                     \
-                                                                      \
-    _Request = (PTDI_REQUEST_KERNEL)&_IrpSp->Parameters;              \
-    _Request->RequestConnectionInformation = (RequestConnectionInfo); \
-    _Request->ReturnConnectionInformation  = (ReturnConnectionInfo);  \
-    _Request->RequestSpecific              = (PVOID)(Time);           \
-}
-
-/*
- * VOID
- * TdiBuildDisassociateAddress(
- *     IN PIRP  Irp,
- *     IN PDEVICE_OBJECT  DevObj,
- *     IN PFILE_OBJECT  FileObj,
- *     IN PVOID  CompRoutine,
- *     IN PVOID  Contxt);
- */
-#define TdiBuildDisassociateAddress(                                  \
-    Irp, DevObj, FileObj, CompRoutine, Contxt)                        \
-{                                                                     \
-    PIO_STACK_LOCATION _IrpSp;                                        \
-                                                                      \
-    _IrpSp = IoGetNextIrpStackLocation(Irp);                          \
-                                                                      \
-    TdiBuildBaseIrp(Irp, DevObj, FileObj, CompRoutine,                \
-                    Contxt, _IrpSp, TDI_DISASSOCIATE_ADDRESS);        \
-}
-
-/*
- * VOID
- * TdiBuildDisconnect(
- *     IN PIRP  Irp,
- *     IN PDEVICE_OBJECT  DevObj,
- *     IN PFILE_OBJECT  FileObj,
- *     IN PVOID  CompRoutine,
- *     IN PVOID  Contxt,
- *     IN PLARGE_INTEGER  Time,
- *     IN PULONG  Flags,
- *     IN PTDI_CONNECTION_INFORMATION  RequestConnectionInfo,
- *     OUT PTDI_CONNECTION_INFORMATION  ReturnConnectionInfo); 
- */
-#define TdiBuildDisconnect(                                           \
-    Irp, DevObj, FileObj, CompRoutine, Contxt, Time,                  \
-    Flags, RequestConnectionInfo, ReturnConnectionInfo)               \
-{                                                                     \
-    PTDI_REQUEST_KERNEL _Request;                                     \
-    PIO_STACK_LOCATION _IrpSp;                                        \
-                                                                      \
-    _IrpSp = IoGetNextIrpStackLocation(Irp);                          \
-                                                                      \
-    TdiBuildBaseIrp(Irp, DevObj, FileObj, CompRoutine,                \
-                    Contxt, _IrpSp, TDI_DISCONNECT);                  \
-                                                                      \
-    _Request = (PTDI_REQUEST_KERNEL)&_IrpSp->Parameters;              \
-    _Request->RequestConnectionInformation = (RequestConnectionInfo); \
-    _Request->ReturnConnectionInformation  = (ReturnConnectionInfo);  \
-    _Request->RequestSpecific = (PVOID)(Time);                        \
-    _Request->RequestFlags    = (Flags);                              \
-}
-
-/*
- * PIRP
- * TdiBuildInternalDeviceControlIrp(
- *     IN CCHAR IrpSubFunction,
- *     IN PDEVICE_OBJECT DeviceObject,
- *     IN PFILE_OBJECT FileObject,
- *     IN PKEVENT Event,
- *     IN PIO_STATUS_BLOCK IoStatusBlock);
- */
-#define TdiBuildInternalDeviceControlIrp( \
-    IrpSubFunction, DeviceObject,         \
-    FileObject, Event, IoStatusBlock)     \
-    IoBuildDeviceIoControlRequest(        \
-        0x00000003, DeviceObject,         \
-        NULL, 0, NULL, 0,                 \
-        TRUE, Event, IoStatusBlock)
-
-/*
- * VOID
- * TdiBuildListen(
- *     IN PIRP  Irp,
- *     IN PDEVICE_OBJECT  DevObj,
- *     IN PFILE_OBJECT  FileObj,
- *     IN PVOID  CompRoutine,
- *     IN PVOID  Contxt,
- *     IN ULONG  Flags,
- *     IN PTDI_CONNECTION_INFORMATION  RequestConnectionInfo,
- *     OUT PTDI_CONNECTION_INFORMATION  ReturnConnectionInfo); 
- */
-#define TdiBuildListen(                                               \
-    Irp, DevObj, FileObj, CompRoutine, Contxt,                        \
-    Flags, RequestConnectionInfo, ReturnConnectionInfo)               \
-{                                                                     \
-    PTDI_REQUEST_KERNEL _Request;                                     \
-    PIO_STACK_LOCATION _IrpSp;                                        \
-                                                                      \
-    _IrpSp = IoGetNextIrpStackLocation(Irp);                          \
-                                                                      \
-    TdiBuildBaseIrp(Irp, DevObj, FileObj, CompRoutine,                \
-                    Contxt, _IrpSp, TDI_LISTEN);                      \
-                                                                      \
-    _Request = (PTDI_REQUEST_KERNEL)&_IrpSp->Parameters;              \
-    _Request->RequestConnectionInformation = (RequestConnectionInfo); \
-    _Request->ReturnConnectionInformation  = (ReturnConnectionInfo);  \
-    _Request->RequestFlags = (Flags);                                 \
-}
-
-TDIKRNLAPI
-VOID 
-DDKAPI
-TdiBuildNetbiosAddress(
-    IN PUCHAR NetbiosName,
-    IN BOOLEAN IsGroupName,
-    IN OUT PTA_NETBIOS_ADDRESS NetworkName);
-
-TDIKRNLAPI
-NTSTATUS 
-DDKAPI
-TdiBuildNetbiosAddressEa(
-    IN PUCHAR Buffer,
-    IN BOOLEAN IsGroupName,
-    IN PUCHAR NetbiosName);
-
-/*
- * VOID 
- * TdiBuildQueryInformation(
- *     IN PIRP  Irp,
- *     IN PDEVICE_OBJECT  DevObj,
- *     IN PFILE_OBJECT  FileObj,
- *     IN PVOID  CompRoutine,
- *     IN PVOID  Contxt,
- *     IN UINT  QType,
- *     IN PMDL  MdlAddr);
- */
-#define TdiBuildQueryInformation(                                          \
-    Irp, DevObj, FileObj, CompRoutine, Contxt, QType, MdlAddr)             \
-{                                                                          \
-    PTDI_REQUEST_KERNEL_QUERY_INFORMATION _Request;                        \
-    PIO_STACK_LOCATION _IrpSp;                                             \
-                                                                           \
-    _IrpSp = IoGetNextIrpStackLocation(Irp);                               \
-                                                                           \
-    TdiBuildBaseIrp(Irp, DevObj, FileObj, CompRoutine,                     \
-                    Contxt, _IrpSp, TDI_QUERY_INFORMATION);                \
-                                                                           \
-    _Request = (PTDI_REQUEST_KERNEL_QUERY_INFORMATION)&_IrpSp->Parameters; \
-    _Request->RequestConnectionInformation = NULL;                         \
-    _Request->QueryType = (ULONG)(QType);                                  \
-    (Irp)->MdlAddress   = (MdlAddr);                                       \
-}
-
-/*
- * VOID
- * TdiBuildReceive(
- *     IN PIRP  Irp,
- *     IN PDEVICE_OBJECT  DevObj,
- *     IN PFILE_OBJECT  FileObj,
- *     IN PVOID  CompRoutine,
- *     IN PVOID  Contxt,
- *     IN PMDL  MdlAddr,
- *     IN ULONG  InFlags, 
- *     IN ULONG  ReceiveLen); 
- */
-#define TdiBuildReceive(                                         \
-    Irp, DevObj, FileObj, CompRoutine, Contxt,                   \
-    MdlAddr, InFlags, ReceiveLen)                                \
-{                                                                \
-    PTDI_REQUEST_KERNEL_RECEIVE _Request;                        \
-    PIO_STACK_LOCATION _IrpSp;                                   \
-                                                                 \
-    _IrpSp = IoGetNextIrpStackLocation(Irp);                     \
-                                                                 \
-    TdiBuildBaseIrp(Irp, DevObj, FileObj, CompRoutine,           \
-                    Contxt, _IrpSp, TDI_RECEIVE);                \
-                                                                 \
-    _Request = (PTDI_REQUEST_KERNEL_RECEIVE)&_IrpSp->Parameters; \
-    _Request->ReceiveFlags  = (InFlags);                         \
-    _Request->ReceiveLength = (ReceiveLen);                      \
-    (Irp)->MdlAddress       = (MdlAddr);                         \
-}
-
-/*
- * VOID
- * TdiBuildReceiveDatagram(
- *     IN PIRP  Irp,
- *     IN PDEVICE_OBJECT  DevObj,
- *     IN PFILE_OBJECT  FileObj,
- *     IN PVOID  CompRoutine,
- *     IN PVOID  Contxt,
- *     IN PMDL  MdlAddr,
- *     IN ULONG  ReceiveLen,
- *     IN PTDI_CONNECTION_INFORMATION  ReceiveDatagramInfo,
- *     OUT PTDI_CONNECTION_INFORMATION  ReturnInfo,
- *     ULONG InFlags); 
- */
-#define TdiBuildReceiveDatagram(                                   \
-    Irp, DevObj, FileObj, CompRoutine, Contxt, MdlAddr,            \
-    ReceiveLen, ReceiveDatagramInfo, ReturnInfo, InFlags)          \
-{                                                                  \
-    PTDI_REQUEST_KERNEL_RECEIVEDG _Request;                        \
-    PIO_STACK_LOCATION _IrpSp;                                     \
-                                                                   \
-    _IrpSp = IoGetNextIrpStackLocation(Irp);                       \
-                                                                   \
-    TdiBuildBaseIrp(Irp, DevObj, FileObj, CompRoutine,             \
-                    Contxt, _IrpSp, TDI_RECEIVE_DATAGRAM);         \
-                                                                   \
-    _Request = (PTDI_REQUEST_KERNEL_RECEIVEDG)&_IrpSp->Parameters; \
-    _Request->ReceiveDatagramInformation = (ReceiveDatagramInfo);  \
-    _Request->ReturnDatagramInformation  = (ReturnInfo);           \
-    _Request->ReceiveLength = (ReceiveLen);                        \
-    _Request->ReceiveFlags  = (InFlags);                           \
-    (Irp)->MdlAddress       = (MdlAddr);                           \
-}
-
-/*
- * VOID
- * TdiBuildSend(
- *     IN PIRP  Irp,
- *     IN PDEVICE_OBJECT  DevObj,
- *     IN PFILE_OBJECT  FileObj,
- *     IN PVOID  CompRoutine,
- *     IN PVOID  Contxt,
- *     IN PMDL  MdlAddr,
- *     IN ULONG  InFlags,
- *     IN ULONG  SendLen);
- */
-#define TdiBuildSend(                                         \
-    Irp, DevObj, FileObj, CompRoutine, Contxt,                \
-    MdlAddr, InFlags, SendLen)                                \
-{                                                             \
-    PTDI_REQUEST_KERNEL_SEND _Request;                        \
-    PIO_STACK_LOCATION _IrpSp;                                \
-                                                              \
-    _IrpSp = IoGetNextIrpStackLocation(Irp);                  \
-                                                              \
-    TdiBuildBaseIrp(Irp, DevObj, FileObj, CompRoutine,        \
-                    Contxt, _IrpSp, TDI_SEND);                \
-                                                              \
-    _Request = (PTDI_REQUEST_KERNEL_SEND)&_IrpSp->Parameters; \
-    _Request->SendFlags  = (InFlags);                         \
-    _Request->SendLength = (SendLen);                         \
-    (Irp)->MdlAddress    = (MdlAddr);                         \
-}
-
-/*
- * VOID
- * TdiBuildSendDatagram(
- *     IN PIRP  Irp,
- *     IN PDEVICE_OBJECT  DevObj,
- *     IN PFILE_OBJECT  FileObj,
- *     IN PVOID  CompRoutine,
- *     IN PVOID  Contxt,
- *     IN PMDL  MdlAddr,
- *     IN ULONG  SendLen,
- *     IN PTDI_CONNECTION_INFORMATION  SendDatagramInfo); 
- */
-#define TdiBuildSendDatagram(                                   \
-    Irp, DevObj, FileObj, CompRoutine, Contxt,                  \
-    MdlAddr, SendLen, SendDatagramInfo)                         \
-{                                                               \
-    PTDI_REQUEST_KERNEL_SENDDG _Request;                        \
-    PIO_STACK_LOCATION _IrpSp;                                  \
-                                                                \
-    _IrpSp = IoGetNextIrpStackLocation(Irp);                    \
-                                                                \
-    TdiBuildBaseIrp(Irp, DevObj, FileObj, CompRoutine,          \
-                    Contxt, _IrpSp, TDI_SEND_DATAGRAM);         \
-                                                                \
-    _Request = (PTDI_REQUEST_KERNEL_SENDDG)&_IrpSp->Parameters; \
-    _Request->SendDatagramInformation = (SendDatagramInfo);     \
-    _Request->SendLength = (SendLen);                           \
-    (Irp)->MdlAddress    = (MdlAddr);                           \
-}
-
-/*
- * VOID
- * TdiBuildSetEventHandler(
- *     IN PIRP  Irp,
- *     IN PDEVICE_OBJECT  DevObj,
- *     IN PFILE_OBJECT  FileObj,
- *     IN PVOID  CompRoutine,
- *     IN PVOID  Contxt,
- *     IN INT  InEventType,
- *     IN PVOID  InEventHandler,
- *     IN PVOID  InEventContext);
- */
-#define TdiBuildSetEventHandler(                                   \
-    Irp, DevObj, FileObj, CompRoutine, Contxt,                     \
-    InEventType, InEventHandler, InEventContext)                   \
-{                                                                  \
-    PTDI_REQUEST_KERNEL_SET_EVENT _Request;                        \
-    PIO_STACK_LOCATION _IrpSp;                                     \
-                                                                   \
-    _IrpSp = IoGetNextIrpStackLocation(Irp);                       \
-                                                                   \
-    TdiBuildBaseIrp(Irp, DevObj, FileObj, CompRoutine,             \
-                    Contxt, _IrpSp, TDI_SET_EVENT_HANDLER);        \
-                                                                   \
-    _Request = (PTDI_REQUEST_KERNEL_SET_EVENT)&_IrpSp->Parameters; \
-    _Request->EventType    = (InEventType);                        \
-    _Request->EventHandler = (PVOID)(InEventHandler);              \
-    _Request->EventContext = (PVOID)(InEventContext);              \
-}
-
-/*
- * VOID
- * TdiBuildSetInformation(
- *     IN PIRP  Irp,
- *     IN PDEVICE_OBJECT  DevObj,
- *     IN PFILE_OBJECT  FileObj,
- *     IN PVOID  CompRoutine,
- *     IN PVOID  Contxt,
- *     IN UINT  SType,
- *     IN PMDL  MdlAddr);
- */
-#define TdiBuildSetInformation(                                          \
-    Irp, DevObj, FileObj, CompRoutine, Contxt, SType, MdlAddr)           \
-{                                                                        \
-    PTDI_REQUEST_KERNEL_SET_INFORMATION _Request;                        \
-    PIO_STACK_LOCATION _IrpSp;                                           \
-                                                                         \
-    _IrpSp = IoGetNextIrpStackLocation(Irp);                             \
-                                                                         \
-    TdiBuildBaseIrp(Irp, DevObj, FileObj, CompRoutine,                   \
-                    Contxt, _IrpSp, TDI_SET_INFORMATION);                \
-                                                                         \
-    _Request = (PTDI_REQUEST_KERNEL_SET_INFORMATION)&_IrpSp->Parameters; \
-    _Request->RequestConnectionInformation = NULL;                       \
-    _Request->SetType = (ULONG)(SType);                                  \
-    (Irp)->MdlAddress = (MdlAddr);                                       \
-}
-
-/* TDI20_CLIENT_INTERFACE_INFO.TdiVersion constants */
-#define TDI_CURRENT_MAJOR_VERSION         2
-#define TDI_CURRENT_MINOR_VERSION         0
-
-#define TDI_CURRENT_VERSION ((TDI_CURRENT_MINOR_VERSION) << 8 \
-  | (TDI_CURRENT_MAJOR_VERSION))
-
-#define TDI_VERSION_ONE                   0x0001
-
-typedef enum _TDI_PNP_OPCODE {
-  TDI_PNP_OP_MIN,
-  TDI_PNP_OP_ADD,
-  TDI_PNP_OP_DEL,
-  TDI_PNP_OP_UPDATE,
-  TDI_PNP_OP_PROVIDERREADY,
-  TDI_PNP_OP_NETREADY,
-  TDI_PNP_OP_ADD_IGNORE_BINDING,
-  TDI_PNP_OP_DELETE_IGNORE_BINDING,
-  TDI_PNP_OP_MAX
-} TDI_PNP_OPCODE;
-
-/* TDI_PNP_CONTEXT.ContextType */
-#define TDI_PNP_CONTEXT_TYPE_IF_NAME            0x1
-#define TDI_PNP_CONTEXT_TYPE_IF_ADDR            0x2
-#define TDI_PNP_CONTEXT_TYPE_PDO                0x3
-#define TDI_PNP_CONTEXT_TYPE_FIRST_OR_LAST_IF   0x4
-
-typedef struct _TDI_PNP_CONTEXT {
-  USHORT  ContextSize;
-  USHORT  ContextType;
-  UCHAR  ContextData[1];
-} TDI_PNP_CONTEXT, *PTDI_PNP_CONTEXT;
-
-typedef VOID DDKAPI
-(*TDI_ADD_ADDRESS_HANDLER)(
-  IN PTA_ADDRESS  Address);
-
-typedef VOID DDKAPI
-(*TDI_ADD_ADDRESS_HANDLER_V2)(
-  IN PTA_ADDRESS  Address,
-  IN PUNICODE_STRING  DeviceName,
-  IN PTDI_PNP_CONTEXT  Context);
-
-typedef VOID DDKAPI
-(*TDI_BINDING_HANDLER)(
-  IN TDI_PNP_OPCODE  PnPOpcode,
-  IN PUNICODE_STRING  DeviceName,
-  IN PWSTR  MultiSZBindList);
-
-typedef VOID DDKAPI
-(*TDI_BIND_HANDLER)(
-  IN PUNICODE_STRING  DeviceName);
-
-typedef VOID DDKAPI
-(*TDI_DEL_ADDRESS_HANDLER)(
-  IN PTA_ADDRESS  Address);
-
-typedef VOID DDKAPI
-(*TDI_DEL_ADDRESS_HANDLER_V2)(
-  IN PTA_ADDRESS  Address,
-  IN PUNICODE_STRING  DeviceName,
-  IN PTDI_PNP_CONTEXT  Context);
-
-typedef NTSTATUS DDKAPI
-(*TDI_PNP_POWER_HANDLER)(
-  IN PUNICODE_STRING  DeviceName,
-  IN PNET_PNP_EVENT  PowerEvent,
-  IN PTDI_PNP_CONTEXT  Context1,
-  IN PTDI_PNP_CONTEXT  Context2);
-
-typedef VOID DDKAPI
-(*TDI_UNBIND_HANDLER)(
-  IN PUNICODE_STRING  DeviceName);
-
-typedef VOID DDKAPI
-(*ProviderPnPPowerComplete)(
-  IN PNET_PNP_EVENT  NetEvent,
-  IN NTSTATUS  ProviderStatus);
-
-typedef struct _TDI20_CLIENT_INTERFACE_INFO {
-  _ANONYMOUS_UNION union {
-    _ANONYMOUS_STRUCT struct {
-      UCHAR  MajorTdiVersion;
-      UCHAR  MinorTdiVersion;
-    } DUMMYSTRUCTNAME;
-    USHORT TdiVersion;
-  } DUMMYUNIONNAME;
-  USHORT  Unused;
-  PUNICODE_STRING  ClientName;
-  TDI_PNP_POWER_HANDLER  PnPPowerHandler;
-  _ANONYMOUS_UNION union {
-    TDI_BINDING_HANDLER  BindingHandler;
-    _ANONYMOUS_STRUCT struct {
-      TDI_BIND_HANDLER  BindHandler;
-      TDI_UNBIND_HANDLER  UnBindHandler;
-    } DUMMYSTRUCTNAME;
-  }DUMMYUNIONNAME2;
-  _ANONYMOUS_UNION union {
-    _ANONYMOUS_STRUCT struct {
-      TDI_ADD_ADDRESS_HANDLER_V2  AddAddressHandlerV2;
-      TDI_DEL_ADDRESS_HANDLER_V2  DelAddressHandlerV2;
-    } DUMMYSTRUCTNAME;
-    _ANONYMOUS_STRUCT struct {
-      TDI_ADD_ADDRESS_HANDLER  AddAddressHandler;
-      TDI_DEL_ADDRESS_HANDLER  DelAddressHandler;
-    } DUMMYSTRUCTNAME2;
-  } DUMMYUNIONNAME3;
-} TDI20_CLIENT_INTERFACE_INFO, *PTDI20_CLIENT_INTERFACE_INFO;
-
-typedef TDI20_CLIENT_INTERFACE_INFO TDI_CLIENT_INTERFACE_INFO;
-typedef TDI_CLIENT_INTERFACE_INFO *PTDI_CLIENT_INTERFACE_INFO;
-
-
-/* TDI functions */
-
-/*
- * VOID
- * TdiCompleteRequest(
- *     IN PIRP Irp,
- *     IN NTSTATUS Status);
- */
-#define TdiCompleteRequest(Irp, Status)             \
-{                                                   \
-    (Irp)->IoStatus.Status = (Status);              \
-    IoCompleteRequest((Irp), IO_NETWORK_INCREMENT); \
-}
-
-TDIKRNLAPI
-NTSTATUS
-DDKAPI
-TdiCopyBufferToMdl(
-    IN PVOID SourceBuffer,
-    IN ULONG SourceOffset,
-    IN ULONG SourceBytesToCopy,
-    IN PMDL DestinationMdlChain,
-    IN ULONG DestinationOffset,
-    IN PULONG BytesCopied);
-
-/*
- * VOID
- * TdiCopyLookaheadData(
- *     IN PVOID Destination,
- *     IN PVOID Source,
- *     IN ULONG Length,
- *     IN ULONG ReceiveFlags);
- */
-#define TdiCopyLookaheadData(Destination, Source, Length, ReceiveFlags) \
-    RtlCopyMemory(Destination, Source, Length)
-
-TDIKRNLAPI
-NTSTATUS
-DDKAPI
-TdiCopyMdlChainToMdlChain (
-  IN PMDL  SourceMdlChain,
-  IN ULONG  SourceOffset,
-  IN PMDL  DestinationMdlChain,
-  IN ULONG  DestinationOffset,
-  OUT PULONG  BytesCopied);
-
-TDIKRNLAPI
-NTSTATUS
-DDKAPI
-TdiCopyMdlToBuffer(
-    IN PMDL SourceMdlChain,
-    IN ULONG SourceOffset,
-    IN PVOID DestinationBuffer,
-    IN ULONG DestinationOffset,
-    IN ULONG DestinationBufferSize,
-    OUT PULONG BytesCopied);
-
-TDIKRNLAPI
-NTSTATUS
-DDKAPI
-TdiDeregisterAddressChangeHandler(
-  IN HANDLE  BindingHandle);
-
-TDIKRNLAPI
-NTSTATUS
-DDKAPI
-TdiDeregisterDeviceObject(
-  IN HANDLE  DevRegistrationHandle);
-
-TDIKRNLAPI
-NTSTATUS
-DDKAPI
-TdiDeregisterNetAddress(
-  IN HANDLE  AddrRegistrationHandle);
-
-TDIKRNLAPI
-NTSTATUS
-DDKAPI
-TdiDeregisterPnPHandlers(
-  IN HANDLE  BindingHandle);
-
-TDIKRNLAPI
-NTSTATUS
-DDKAPI
-TdiDeregisterProvider(
-  IN HANDLE  ProviderHandle);
-
-TDIKRNLAPI
-NTSTATUS
-DDKAPI
-TdiEnumerateAddresses(
-  IN HANDLE  BindingHandle);
-
-TDIKRNLAPI
-VOID
-DDKAPI
-TdiInitialize(
-  VOID);
-
-TDIKRNLAPI
-VOID
-DDKAPI
-TdiMapBuffer(
-    IN PMDL MdlChain);
-
-TDIKRNLAPI
-NTSTATUS
-DDKAPI
-TdiMapUserRequest(
-    IN PDEVICE_OBJECT DeviceObject,
-    IN PIRP Irp,
-    IN PIO_STACK_LOCATION IrpSp);
-
-TDIKRNLAPI
-BOOLEAN
-DDKAPI
-TdiMatchPdoWithChainedReceiveContext(
-  IN PVOID TsduDescriptor,
-  IN PVOID PDO);
-
-TDIKRNLAPI
-VOID
-DDKAPI
-TdiPnPPowerComplete(
-  IN HANDLE  BindingHandle,
-  IN PNET_PNP_EVENT  PowerEvent,
-  IN NTSTATUS  Status);
-
-TDIKRNLAPI
-NTSTATUS
-DDKAPI
-TdiPnPPowerRequest(
-  IN PUNICODE_STRING  DeviceName,
-  IN PNET_PNP_EVENT  PowerEvent,
-  IN PTDI_PNP_CONTEXT  Context1,
-  IN PTDI_PNP_CONTEXT  Context2,
-  IN ProviderPnPPowerComplete  ProtocolCompletionHandler);
-
-TDIKRNLAPI
-NTSTATUS
-DDKAPI
-TdiProviderReady(
-  IN HANDLE  ProviderHandle);
-
-TDIKRNLAPI
-NTSTATUS
-DDKAPI
-TdiRegisterAddressChangeHandler(
-  IN TDI_ADD_ADDRESS_HANDLER  AddHandler,
-  IN TDI_DEL_ADDRESS_HANDLER  DeleteHandler,
-  OUT HANDLE  *BindingHandle);
-
-TDIKRNLAPI
-NTSTATUS
-DDKAPI
-TdiRegisterDeviceObject(
-  IN PUNICODE_STRING  DeviceName,
-  OUT HANDLE  *DevRegistrationHandle);
-
-TDIKRNLAPI
-NTSTATUS
-DDKAPI
-TdiRegisterNetAddress(
-  IN PTA_ADDRESS  Address,
-  IN PUNICODE_STRING  DeviceName,
-  IN PTDI_PNP_CONTEXT  Context,
-  OUT HANDLE  *AddrRegistrationHandle);
-
-TDIKRNLAPI
-NTSTATUS
-DDKAPI
-TdiRegisterNotificationHandler(
-  IN TDI_BIND_HANDLER  BindHandler,
-  IN TDI_UNBIND_HANDLER  UnbindHandler,
-  OUT HANDLE  *BindingHandle);
-
-TDIKRNLAPI
-NTSTATUS
-DDKAPI
-TdiRegisterPnPHandlers(
-  IN PTDI_CLIENT_INTERFACE_INFO  ClientInterfaceInfo,
-  IN ULONG  InterfaceInfoSize,
-  OUT HANDLE  *BindingHandle);
-
-TDIKRNLAPI
-NTSTATUS
-DDKAPI
-TdiRegisterProvider(
-  IN PUNICODE_STRING  ProviderName,
-  OUT HANDLE  *ProviderHandle);
-
-TDIKRNLAPI
-VOID
-DDKAPI
-TdiReturnChainedReceives(
-    IN PVOID *TsduDescriptors,
-    IN ULONG  NumberOfTsdus);
-
-TDIKRNLAPI
-VOID
-DDKAPI
-TdiUnmapBuffer(
-    IN PMDL MdlChain);
-
-#pragma pack(pop)
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* __TDIKRNL_H */
diff --git a/reactos/include/net/tdistat.h b/reactos/include/net/tdistat.h
deleted file mode 100644 (file)
index f0588d2..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-/*
- * tdistat.h
- *
- * TDI status codes
- *
- * This file is part of the w32api package.
- *
- * Contributors:
- *   Created by Casper S. Hornstrup <chorns@users.sourceforge.net>
- *
- * THIS SOFTWARE IS NOT COPYRIGHTED
- *
- * This source code is offered for use in the public domain. You may
- * use, modify or distribute it freely.
- *
- * This code is distributed in the hope that it will be useful but
- * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
- * DISCLAIMED. This includes but is not limited to warranties of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- *
- */
-
-#ifndef __TDISTAT_H
-#define __TDISTAT_H
-
-#if __GNUC__ >=3
-#pragma GCC system_header
-#endif
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#define TDI_SUCCESS                       STATUS_SUCCESS
-#define TDI_NO_RESOURCES                  STATUS_INSUFFICIENT_RESOURCES
-#define TDI_ADDR_IN_USE                   STATUS_ADDRESS_ALREADY_EXISTS
-#define TDI_BAD_ADDR                      STATUS_INVALID_ADDRESS_COMPONENT
-#define TDI_NO_FREE_ADDR                  STATUS_TOO_MANY_ADDRESSES
-#define TDI_ADDR_INVALID                  STATUS_INVALID_ADDRESS
-#define TDI_ADDR_DELETED                  STATUS_ADDRESS_CLOSED
-#define TDI_BUFFER_OVERFLOW               STATUS_BUFFER_OVERFLOW
-#define TDI_BAD_EVENT_TYPE                STATUS_INVALID_PARAMETER
-#define TDI_BAD_OPTION                    STATUS_INVALID_PARAMETER
-#define TDI_CONN_REFUSED                  STATUS_CONNECTION_REFUSED
-#define TDI_INVALID_CONNECTION            STATUS_CONNECTION_INVALID
-#define TDI_ALREADY_ASSOCIATED            STATUS_ADDRESS_ALREADY_ASSOCIATED
-#define TDI_NOT_ASSOCIATED                STATUS_ADDRESS_NOT_ASSOCIATED
-#define TDI_CONNECTION_ACTIVE             STATUS_CONNECTION_ACTIVE
-#define TDI_CONNECTION_ABORTED            STATUS_CONNECTION_ABORTED
-#define TDI_CONNECTION_RESET              STATUS_CONNECTION_RESET
-#define TDI_TIMED_OUT                     STATUS_IO_TIMEOUT
-#define TDI_GRACEFUL_DISC                 STATUS_GRACEFUL_DISCONNECT
-#define TDI_NOT_ACCEPTED                  STATUS_DATA_NOT_ACCEPTED
-#define TDI_MORE_PROCESSING               STATUS_MORE_PROCESSING_REQUIRED
-#define TDI_INVALID_STATE                 STATUS_INVALID_DEVICE_STATE
-#define TDI_INVALID_PARAMETER             STATUS_INVALID_PARAMETER
-#define TDI_DEST_NET_UNREACH              STATUS_NETWORK_UNREACHABLE
-#define TDI_DEST_HOST_UNREACH             STATUS_HOST_UNREACHABLE
-#define TDI_DEST_UNREACHABLE              TDI_DEST_HOST_UNREACH
-#define TDI_DEST_PROT_UNREACH             STATUS_PROTOCOL_UNREACHABLE
-#define TDI_DEST_PORT_UNREACH             STATUS_PORT_UNREACHABLE
-#define TDI_INVALID_QUERY                 STATUS_INVALID_DEVICE_REQUEST
-#define TDI_REQ_ABORTED                   STATUS_REQUEST_ABORTED
-#define TDI_BUFFER_TOO_SMALL              STATUS_BUFFER_TOO_SMALL
-#define TDI_CANCELLED                     STATUS_CANCELLED
-#define        TDI_BUFFER_TOO_BIG                          STATUS_INVALID_BUFFER_SIZE
-#define TDI_INVALID_REQUEST               STATUS_INVALID_DEVICE_REQUEST
-#define TDI_PENDING                       STATUS_PENDING
-#define TDI_ITEM_NOT_FOUND                STATUS_OBJECT_NAME_NOT_FOUND
-
-#define TDI_STATUS_BAD_VERSION            0xC0010004L
-#define TDI_STATUS_BAD_CHARACTERISTICS    0xC0010005L
-
-#define        TDI_OPTION_EOL                    0
-
-#define        TDI_ADDRESS_OPTION_REUSE          1
-#define        TDI_ADDRESS_OPTION_DHCP           2
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* __TDISTAT_H */
diff --git a/reactos/include/tcpmisc.h b/reactos/include/tcpmisc.h
new file mode 100644 (file)
index 0000000..ce9c7fa
--- /dev/null
@@ -0,0 +1,96 @@
+#ifndef TCPMISC_H
+#define TCPMISC_H
+
+#define        IF_MIB_STATS_ID         1
+#define        MAX_PHYSADDR_SIZE       8
+#define        MAX_IFDESCR_LEN                 256
+
+/* ID to use for requesting an IFEntry for an interface */
+#define IF_MIB_STATS_ID            1
+
+/* ID to use for requesting an IPSNMPInfo for an interface */
+#define IP_MIB_STATS_ID            1
+
+/* ID to use for requesting the route table */
+#define IP_MIB_ROUTETABLE_ENTRY_ID  0x101
+#define IP_MIB_ADDRTABLE_ENTRY_ID 102
+
+typedef struct IFEntry {
+       ULONG                   if_index;
+       ULONG                   if_type;
+       ULONG                   if_mtu;
+       ULONG                   if_speed;
+       ULONG                   if_physaddrlen;
+       UCHAR                   if_physaddr[MAX_PHYSADDR_SIZE];
+       ULONG                   if_adminstatus;
+       ULONG                   if_operstatus;
+       ULONG                   if_lastchange;
+       ULONG                   if_inoctets;
+       ULONG                   if_inucastpkts;
+       ULONG                   if_innucastpkts;
+       ULONG                   if_indiscards;
+       ULONG                   if_inerrors;
+       ULONG                   if_inunknownprotos;
+       ULONG                   if_outoctets;
+       ULONG                   if_outucastpkts;
+       ULONG                   if_outnucastpkts;
+       ULONG                   if_outdiscards;
+       ULONG                   if_outerrors;
+       ULONG                   if_outqlen;
+       ULONG                   if_descrlen;
+       UCHAR                   if_descr[1];
+} IFEntry;
+
+typedef struct _IPRouteEntry {
+    ULONG ire_dest;
+    ULONG ire_index;            //matches if_index in IFEntry and iae_index in IPAddrEntry
+    ULONG ire_metric;
+    ULONG ire_unk1;             //??
+    ULONG ire_unk2;             //??
+    ULONG ire_unk3;             //??
+    ULONG ire_gw;
+    ULONG ire_unk4;             //??
+    ULONG ire_unk5;             //??
+    ULONG ire_unk6;             //??
+    ULONG ire_mask;
+    ULONG ire_unk7;             //??
+    ULONG ire_unk8;             //??
+} IPRouteEntry;
+
+typedef struct _IPAddrEntry {
+    ULONG iae_addr;
+    ULONG iae_index;
+    ULONG iae_mask;
+    ULONG iae_bcastaddr;
+    ULONG iae_reasmsize;
+    ULONG iae_context;
+    ULONG iae_pad;
+} IPAddrEntry;
+
+typedef struct _IPSNMPInfo {
+    ULONG ipsi_index;
+    ULONG ipsi_forwarding;
+    ULONG ipsi_defaultttl;
+    ULONG ipsi_inreceives;
+    ULONG ipsi_inhdrerrors;
+    ULONG ipsi_inaddrerrors;
+    ULONG ipsi_inunknownprotos;
+    ULONG ipsi_indiscards;
+    ULONG ipsi_indelivers;
+    ULONG ipsi_outrequests;
+    ULONG ipsi_routingdiscards;
+    ULONG ipsi_outdiscards;
+    ULONG ipsi_outnoroutes;
+    ULONG ipsi_reasmtimeout;
+    ULONG ipsi_reasmreqds;
+    ULONG ipsi_reasmoks;
+    ULONG ipsi_reasmfails;
+    ULONG ipsi_fragoks;
+    ULONG ipsi_fragfails;
+    ULONG ipsi_fragcreates;
+    ULONG ipsi_numif;
+    ULONG ipsi_numaddr;
+    ULONG ipsi_numroutes;
+} IPSNMPInfo;
+
+#endif /* TCPMISC_H */
index 554e4e0..92a83b9 100644 (file)
@@ -152,7 +152,7 @@ NTSTATUS tdiGetSetOfThings( HANDLE tcpFile,
      * stabilizes.
      */
     do {
-        assert( !entitySet ); /* We must not have an entity set allocated */
+        ASSERT( !entitySet ); /* We must not have an entity set allocated */
         status = DeviceIoControl( tcpFile,
                                   IOCTL_TCP_QUERY_INFORMATION_EX,
                                   &req,
index 8d957f0..dbe0890 100644 (file)
@@ -23,8 +23,8 @@
 #define _WIN32_WINNT 0x500
 #include <ddk/ntddk.h>
 #include <rosrtl/string.h>
-#include <ntdll/rtl.h>
-#include <net/miniport.h>
+#include <ddk/miniport.h>
+#include <tcpmisc.h>
 #include <winsock2.h>
 #include <nspapi.h>
 #include <iptypes.h>
@@ -32,7 +32,7 @@
 #include "resinfo.h"
 #include "wine/debug.h"
 
-#include "net/tdiinfo.h"
+#include "ddk/tdiinfo.h"
 #include "tcpioctl.h"
 
 #ifndef ETH_ALEN
index ad66fc3..6e18d49 100644 (file)
@@ -14,7 +14,7 @@
 #include <wsahelp.h>
 #include <winsock2.h>
 #include <ws2spi.h>
-#include <net/tdi.h>
+#include <ddk/tdi.h>
 #include <afd/shared.h>
 #include <debug.h>