reorganized for NDIS_WDM support ( submitted by vizzini )
authorRoyce Mitchell III <royce3@ev1.net>
Thu, 24 Jul 2003 18:14:59 +0000 (18:14 +0000)
committerRoyce Mitchell III <royce3@ev1.net>
Thu, 24 Jul 2003 18:14:59 +0000 (18:14 +0000)
svn path=/trunk/; revision=5250

50 files changed:
reactos/drivers/bus/acpi/makefile
reactos/drivers/net/afd/afd/afd.c
reactos/drivers/net/dd/ne2000/include/debug.h
reactos/drivers/net/ndis/include/debug.h
reactos/drivers/net/ndis/include/protocol.h
reactos/drivers/net/ndis/ndis.def
reactos/drivers/net/ndis/ndis.edf
reactos/drivers/net/ndis/ndis/buffer.c
reactos/drivers/net/ndis/ndis/memory.c
reactos/drivers/net/ndis/ndis/string.c
reactos/drivers/net/ndis/ndis/stubs.c
reactos/drivers/net/ndis/ndis/time.c
reactos/drivers/net/npf/bucket_lookup.c
reactos/drivers/net/npf/bucket_lookup.h
reactos/drivers/net/npf/dump.c
reactos/drivers/net/npf/functions.h
reactos/drivers/net/npf/normal_lookup.h
reactos/drivers/net/npf/packet.c
reactos/drivers/net/npf/tcp_session.c
reactos/drivers/net/npf/tcp_session.h
reactos/drivers/net/npf/tme.c
reactos/drivers/net/npf/tme.h
reactos/drivers/net/npf/win_bpf_filter.c
reactos/drivers/net/npf/win_bpf_filter_init.h
reactos/drivers/net/packet/bucket_lookup.c
reactos/drivers/net/packet/bucket_lookup.h
reactos/drivers/net/packet/dump.c
reactos/drivers/net/packet/functions.c
reactos/drivers/net/packet/functions.h
reactos/drivers/net/packet/normal_lookup.c
reactos/drivers/net/packet/normal_lookup.h
reactos/drivers/net/packet/packet.c
reactos/drivers/net/packet/packet.h
reactos/drivers/net/packet/tcp_session.c
reactos/drivers/net/packet/tcp_session.h
reactos/drivers/net/packet/tme.h
reactos/drivers/net/packet/win_bpf_filter.c
reactos/drivers/net/packet/win_bpf_filter_init.h
reactos/drivers/net/tcpip/tcpip/main.c
reactos/drivers/net/tcpip/tcpip/routines.c
reactos/drivers/net/tcpip/transport/tcp/tcp_output.c
reactos/drivers/net/tditest/include/debug.h
reactos/drivers/net/wshtcpip/debug.h
reactos/include/ddk/psfuncs.h
reactos/include/net/miniport.h
reactos/include/net/ndis.h
reactos/include/net/ndisoid.h
reactos/lib/iphlpapi/debug.h
reactos/ntoskrnl/dbg/profile.c
reactos/subsys/smss/init.c

index 4fa295b..9699a95 100644 (file)
@@ -1,4 +1,4 @@
-# $Id: makefile,v 1.9 2002/09/08 10:22:02 chorns Exp $
+# $Id: makefile,v 1.10 2003/07/24 18:14:58 royce Exp $
 
 PATH_TO_TOP = ../../..
 
 
 PATH_TO_TOP = ../../..
 
@@ -8,6 +8,8 @@ TARGET_NAME = acpi
 
 TARGET_CFLAGS = -I./include -I./ospm/include
 
 
 TARGET_CFLAGS = -I./include -I./ospm/include
 
+TARGET_DDKLIBS = ntoskrnl.a
+
 OBJECTS_PATH = objects
 
 TARGET_OBJECTS = $(OBJECTS_PATH)/$(TARGET_NAME).o
 OBJECTS_PATH = objects
 
 TARGET_OBJECTS = $(OBJECTS_PATH)/$(TARGET_NAME).o
index 742d989..a82fea2 100644 (file)
@@ -167,13 +167,13 @@ DriverEntry(
     KeInitializeSpinLock(&DeviceExt->FCBListLock);
     InitializeListHead(&DeviceExt->FCBListHead);
 
     KeInitializeSpinLock(&DeviceExt->FCBListLock);
     InitializeListHead(&DeviceExt->FCBListHead);
 
-    DriverObject->MajorFunction[IRP_MJ_CREATE] = AfdCreate;
-    DriverObject->MajorFunction[IRP_MJ_CLOSE] = AfdClose;
-    DriverObject->MajorFunction[IRP_MJ_READ] = AfdRead;
-    DriverObject->MajorFunction[IRP_MJ_WRITE] = AfdWrite;
-    DriverObject->MajorFunction[IRP_MJ_FILE_SYSTEM_CONTROL] = AfdFileSystemControl;
-    DriverObject->MajorFunction[IRP_MJ_DEVICE_CONTROL] = AfdDispatch;
-    DriverObject->MajorFunction[IRP_MJ_CLEANUP] = AfdClose;
+    DriverObject->MajorFunction[IRP_MJ_CREATE] = (PDRIVER_DISPATCH)AfdCreate;
+    DriverObject->MajorFunction[IRP_MJ_CLOSE] = (PDRIVER_DISPATCH)AfdClose;
+    DriverObject->MajorFunction[IRP_MJ_READ] = (PDRIVER_DISPATCH)AfdRead;
+    DriverObject->MajorFunction[IRP_MJ_WRITE] = (PDRIVER_DISPATCH)AfdWrite;
+    DriverObject->MajorFunction[IRP_MJ_FILE_SYSTEM_CONTROL] = (PDRIVER_DISPATCH)AfdFileSystemControl;
+    DriverObject->MajorFunction[IRP_MJ_DEVICE_CONTROL] = (PDRIVER_DISPATCH)AfdDispatch;
+    DriverObject->MajorFunction[IRP_MJ_CLEANUP] = (PDRIVER_DISPATCH)AfdClose;
 
     DriverObject->DriverUnload = (PDRIVER_UNLOAD)AfdUnload;
 
 
     DriverObject->DriverUnload = (PDRIVER_UNLOAD)AfdUnload;
 
index 5b96c6f..2b61a54 100644 (file)
@@ -43,6 +43,8 @@ extern ULONG DebugTraceLevel;
 #endif /* _MSC_VER */
 
 
 #endif /* _MSC_VER */
 
 
+/* Assert and kin are defined in rtl.h */
+#if 0
 #ifdef ASSERT
 #undef ASSERT
 #endif
 #ifdef ASSERT
 #undef ASSERT
 #endif
@@ -52,7 +54,7 @@ extern ULONG DebugTraceLevel;
 #else /* NASSERT */
 #define ASSERT(x) if (!(x)) { NDIS_DbgPrint(MIN_TRACE, ("Assertion "#x" failed at %s:%d\n", __FILE__, __LINE__)); KeBugCheck(0); }
 #endif /* NASSERT */
 #else /* NASSERT */
 #define ASSERT(x) if (!(x)) { NDIS_DbgPrint(MIN_TRACE, ("Assertion "#x" failed at %s:%d\n", __FILE__, __LINE__)); KeBugCheck(0); }
 #endif /* NASSERT */
-
+#endif
 #define ASSERT_IRQL(x) ASSERT(KeGetCurrentIrql() <= (x))
 
 #else /* DBG */
 #define ASSERT_IRQL(x) ASSERT(KeGetCurrentIrql() <= (x))
 
 #else /* DBG */
@@ -60,7 +62,7 @@ extern ULONG DebugTraceLevel;
 #define NDIS_DbgPrint(_t_, _x_)
 
 #define ASSERT_IRQL(x)
 #define NDIS_DbgPrint(_t_, _x_)
 
 #define ASSERT_IRQL(x)
-#define ASSERT(x)
+/* #define ASSERT(x) */  /* rtl.h */
 
 #endif /* DBG */
 
 
 #endif /* DBG */
 
index fbe3f88..c60e136 100644 (file)
@@ -46,6 +46,8 @@ extern DWORD DebugTraceLevel;
 #endif /* _MSC_VER */
 
 
 #endif /* _MSC_VER */
 
 
+/* ASSERT is in rtl.h */
+#if 0
 #ifdef ASSERT
 #undef ASSERT
 #endif
 #ifdef ASSERT
 #undef ASSERT
 #endif
@@ -55,7 +57,7 @@ extern DWORD DebugTraceLevel;
 #else /* NASSERT */
 #define ASSERT(x) if (!(x)) { NDIS_DbgPrint(MIN_TRACE, ("Assertion "#x" failed at %s:%d\n", __FILE__, __LINE__)); KeBugCheck(0); }
 #endif /* NASSERT */
 #else /* NASSERT */
 #define ASSERT(x) if (!(x)) { NDIS_DbgPrint(MIN_TRACE, ("Assertion "#x" failed at %s:%d\n", __FILE__, __LINE__)); KeBugCheck(0); }
 #endif /* NASSERT */
-
+#endif
 #define ASSERT_IRQL(x) ASSERT(KeGetCurrentIrql() <= (x))
 
 #else /* DBG */
 #define ASSERT_IRQL(x) ASSERT(KeGetCurrentIrql() <= (x))
 
 #else /* DBG */
@@ -63,7 +65,7 @@ extern DWORD DebugTraceLevel;
 #define NDIS_DbgPrint(_t_, _x_)
 
 #define ASSERT_IRQL(x)
 #define NDIS_DbgPrint(_t_, _x_)
 
 #define ASSERT_IRQL(x)
-#define ASSERT(x)
+/*#define ASSERT(x)*/
 
 #endif /* DBG */
 
 
 #endif /* DBG */
 
index 583d186..a7da53e 100644 (file)
@@ -9,7 +9,9 @@
 #define __PROTOCOL_H
 
 #include <ndissys.h>
 #define __PROTOCOL_H
 
 #include <ndissys.h>
-#include <miniport.h>
+#include <net/ndis.h>
+#include "../include/miniport.h"
+//#include <miniport.h>
 
 
 typedef struct _PROTOCOL_BINDING {
 
 
 typedef struct _PROTOCOL_BINDING {
index 28a6d4c..a8c3a22 100644 (file)
@@ -171,6 +171,7 @@ NdisInterlockedInsertTailList@12
 NdisInterlockedPopEntrySList@8
 NdisInterlockedPushEntrySList@12
 NdisInterlockedRemoveHeadList@8
 NdisInterlockedPopEntrySList@8
 NdisInterlockedPushEntrySList@12
 NdisInterlockedRemoveHeadList@8
+NdisInitializeListHead@4
 NdisMAllocateMapRegisters@20
 NdisMAllocateSharedMemory@20
 NdisMAllocateSharedMemoryAsync@16
 NdisMAllocateMapRegisters@20
 NdisMAllocateSharedMemory@20
 NdisMAllocateSharedMemoryAsync@16
index d06915c..052e518 100644 (file)
@@ -166,6 +166,7 @@ NdisInitUnicodeString=NdisInitUnicodeString@8
 NdisInterlockedAddUlong=NdisInterlockedAddUlong@12
 NdisInterlockedDecrement=NdisInterlockedDecrement@4
 NdisInterlockedIncrement=NdisInterlockedIncrement@4
 NdisInterlockedAddUlong=NdisInterlockedAddUlong@12
 NdisInterlockedDecrement=NdisInterlockedDecrement@4
 NdisInterlockedIncrement=NdisInterlockedIncrement@4
+NdisInitializeListHead=NdisInitializeListHead@4
 NdisInterlockedInsertHeadList=NdisInterlockedInsertHeadList@12
 NdisInterlockedInsertTailList=NdisInterlockedInsertTailList@12
 NdisInterlockedPopEntrySList=NdisInterlockedPopEntrySList@8
 NdisInterlockedInsertHeadList=NdisInterlockedInsertHeadList@12
 NdisInterlockedInsertTailList=NdisInterlockedInsertTailList@12
 NdisInterlockedPopEntrySList=NdisInterlockedPopEntrySList@8
index e2a0f7a..59f189c 100644 (file)
@@ -237,12 +237,10 @@ UINT CopyPacketToBufferChain(
     NdisQueryBuffer(DstBuffer, (PVOID)&DstData, &DstSize);
     if (SkipToOffset(DstBuffer, DstOffset, &DstData, &DstSize) == -1)
         return 0;
     NdisQueryBuffer(DstBuffer, (PVOID)&DstData, &DstSize);
     if (SkipToOffset(DstBuffer, DstOffset, &DstData, &DstSize) == -1)
         return 0;
-
     /* Skip SrcOffset bytes in the source packet */
     NdisGetFirstBufferFromPacket(SrcPacket, &SrcBuffer, (PVOID)&SrcData, &SrcSize, &Total);
     if (SkipToOffset(SrcBuffer, SrcOffset, &SrcData, &SrcSize) == -1)
         return 0;
     /* Skip SrcOffset bytes in the source packet */
     NdisGetFirstBufferFromPacket(SrcPacket, &SrcBuffer, (PVOID)&SrcData, &SrcSize, &Total);
     if (SkipToOffset(SrcBuffer, SrcOffset, &SrcData, &SrcSize) == -1)
         return 0;
-
     /* Copy the data */
     for (Total = 0;;) {
         /* Find out how many bytes we can copy at one time */
     /* Copy the data */
     for (Total = 0;;) {
         /* Find out how many bytes we can copy at one time */
index 0b48f71..fce0d37 100644 (file)
@@ -20,15 +20,24 @@ NdisAllocateMemoryWithTag(
     IN  UINT    Length,
     IN  ULONG   Tag)
 /*
     IN  UINT    Length,
     IN  ULONG   Tag)
 /*
- * FUNCTION:
+ * FUNCTION:  Allocates a block of memory, with a 32-bit tag
  * ARGUMENTS:
  * ARGUMENTS:
+ *   VirtualAddress = a pointer to the returned memory block
+ *   Length         = the number of requested bytes
+ *   Tag            = 32-bit pool tag 
  * NOTES:
  *    NDIS 5.0
  */
 {
  * NOTES:
  *    NDIS 5.0
  */
 {
-    UNIMPLEMENTED
+    PVOID Block;
 
 
-    return NDIS_STATUS_FAILURE;
+    /* Plain nonpaged memory with tag */
+    Block           = ExAllocatePoolWithTag(NonPagedPool, Length, Tag);
+    *VirtualAddress = Block;
+    if (!Block)
+        return NDIS_STATUS_FAILURE;
+
+       return NDIS_STATUS_SUCCESS;
 }
 
 
 }
 
 
index 55ff251..6689799 100644 (file)
@@ -17,7 +17,7 @@ NDIS_STATUS
 EXPORT
 NdisAnsiStringToUnicodeString(
     IN OUT  PNDIS_STRING        DestinationString,
 EXPORT
 NdisAnsiStringToUnicodeString(
     IN OUT  PNDIS_STRING        DestinationString,
-    IN      PNDIS_ANSI_STRING   SourceString)
+    IN      PANSI_STRING   SourceString)
 /*
  * FUNCTION: Converts an ANSI string to an NDIS (unicode) string
  * ARGUMENTS:
 /*
  * FUNCTION: Converts an ANSI string to an NDIS (unicode) string
  * ARGUMENTS:
@@ -61,7 +61,7 @@ NdisEqualString(
 VOID
 EXPORT
 NdisInitAnsiString(
 VOID
 EXPORT
 NdisInitAnsiString(
-    IN OUT  PNDIS_ANSI_STRING   DestinationString,
+    IN OUT  PANSI_STRING   DestinationString,
     IN      PCSTR               SourceString)
 /*
  * FUNCTION: Initializes an ANSI string
     IN      PCSTR               SourceString)
 /*
  * FUNCTION: Initializes an ANSI string
@@ -131,7 +131,7 @@ NdisInitUnicodeString(
 NDIS_STATUS
 EXPORT
 NdisUnicodeStringToAnsiString(
 NDIS_STATUS
 EXPORT
 NdisUnicodeStringToAnsiString(
-    IN OUT  PNDIS_ANSI_STRING   DestinationString,
+    IN OUT  PANSI_STRING   DestinationString,
     IN      PNDIS_STRING        SourceString)
 /*
  * FUNCTION: Converts an NDIS (unicode) string to an ANSI string
     IN      PNDIS_STRING        SourceString)
 /*
  * FUNCTION: Converts an NDIS (unicode) string to an ANSI string
index a5200e2..5e5f374 100644 (file)
@@ -51,15 +51,12 @@ NdisCompleteUnbindAdapter(
 }
 
 
 }
 
 
-/*
- * @unimplemented
- */
 VOID
 EXPORT
 NdisInitializeListHead(
     IN  PLIST_ENTRY ListHead)
 {
 VOID
 EXPORT
 NdisInitializeListHead(
     IN  PLIST_ENTRY ListHead)
 {
-    UNIMPLEMENTED
+       InitializeListHead(ListHead);
 }
 
 
 }
 
 
index 2c96191..18c5e7f 100644 (file)
@@ -44,7 +44,7 @@ NdisCancelTimer(
 VOID
 EXPORT
 NdisGetCurrentSystemTime (
 VOID
 EXPORT
 NdisGetCurrentSystemTime (
-    IN  OUT PLONGLONG   pSystemTime)
+    IN  OUT PLARGE_INTEGER   pSystemTime)
 {
     KeQuerySystemTime (pSystemTime);
 }
 {
     KeQuerySystemTime (pSystemTime);
 }
@@ -62,7 +62,7 @@ NdisInitializeTimer(
 {
     KeInitializeTimer (&Timer->Timer);
 
 {
     KeInitializeTimer (&Timer->Timer);
 
-    KeInitializeDpc (&Timer->Dpc, TimerFunction, FunctionContext);
+    KeInitializeDpc (&Timer->Dpc, (PKDEFERRED_ROUTINE)TimerFunction, FunctionContext);
 }
 
 
 }
 
 
index e2c5fde..26717b6 100644 (file)
@@ -248,4 +248,5 @@ uint32 bucket_lookup_insert(uint8 *key, TME_DATA *data, MEM_TYPE *mem_ex, struct
                
                return TME_TRUE;
        }
                
                return TME_TRUE;
        }
-}
\ No newline at end of file
+}
+
index 512d637..e4caf2a 100644 (file)
@@ -40,4 +40,5 @@ uint32 bucket_lookup_insert(uint8 *key, TME_DATA *data, MEM_TYPE *mem_ex, struct
 #define BUCKET_LOOKUP           0x00000010
 uint32 bucket_lookup(uint8 *key, TME_DATA *data, MEM_TYPE *mem_ex, struct time_conv *time_ref);
 
 #define BUCKET_LOOKUP           0x00000010
 uint32 bucket_lookup(uint8 *key, TME_DATA *data, MEM_TYPE *mem_ex, struct time_conv *time_ref);
 
-#endif
\ No newline at end of file
+#endif
+
index 1f1b754..a567c83 100644 (file)
 #include <ddk/ntddk.h>
 #include <net/ndis.h>
 //#define PsGetCurrentProcess() IoGetCurrentProcess()
 #include <ddk/ntddk.h>
 #include <net/ndis.h>
 //#define PsGetCurrentProcess() IoGetCurrentProcess()
+#ifndef PsGetCurrentThread
 #define PsGetCurrentThread() ((PETHREAD) (KeGetCurrentThread()))
 #endif
 #define PsGetCurrentThread() ((PETHREAD) (KeGetCurrentThread()))
 #endif
+#endif
 
 #include "debug.h"
 #include "packet.h"
 
 #include "debug.h"
 #include "packet.h"
index d25c679..0ba2bfa 100644 (file)
@@ -64,4 +64,5 @@ exec_fcn exec_fcn_mapper(uint32 index);
 #include <ne/tme/tcp_session.h>
 #endif
 
 #include <ne/tme/tcp_session.h>
 #endif
 
-#endif
\ No newline at end of file
+#endif
+
index 69e21ce..c89194f 100644 (file)
@@ -42,4 +42,5 @@ uint32 normal_lut_w_insert(uint8 *key, TME_DATA *data, MEM_TYPE *mem_ex, struct
 uint32 normal_lut_wo_insert(uint8 *key, TME_DATA *data, MEM_TYPE *mem_ex, struct time_conv *time_ref); 
 #define DUMMY_INSERT                    1234
 
 uint32 normal_lut_wo_insert(uint8 *key, TME_DATA *data, MEM_TYPE *mem_ex, struct time_conv *time_ref); 
 #define DUMMY_INSERT                    1234
 
-#endif
\ No newline at end of file
+#endif
+
index 17acc0b..815ae71 100644 (file)
@@ -96,7 +96,7 @@ DriverEntry(
     UNICODE_STRING UnicodeDeviceName;
     PDEVICE_OBJECT DeviceObject = NULL;
     PDEVICE_EXTENSION DeviceExtension = NULL;
     UNICODE_STRING UnicodeDeviceName;
     PDEVICE_OBJECT DeviceObject = NULL;
     PDEVICE_EXTENSION DeviceExtension = NULL;
-    NTSTATUS Status = STATUS_SUCCESS;
+    NDIS_STATUS Status = NDIS_STATUS_SUCCESS;
     NTSTATUS ErrorCode = STATUS_SUCCESS;
     NDIS_STRING ProtoName = NDIS_STRING_CONST("PacketDriver");
     ULONG          DevicesCreated=0;
     NTSTATUS ErrorCode = STATUS_SUCCESS;
     NDIS_STRING ProtoName = NDIS_STRING_CONST("PacketDriver");
     ULONG          DevicesCreated=0;
@@ -173,11 +173,11 @@ DriverEntry(
     NdisAllocateSpinLock(&Opened_Instances_Lock);
 
     // Set up the device driver entry points.
     NdisAllocateSpinLock(&Opened_Instances_Lock);
 
     // Set up the device driver entry points.
-    DriverObject->MajorFunction[IRP_MJ_CREATE] = NPF_Open;
-    DriverObject->MajorFunction[IRP_MJ_CLOSE]  = NPF_Close;
-    DriverObject->MajorFunction[IRP_MJ_READ]   = NPF_Read;
-    DriverObject->MajorFunction[IRP_MJ_WRITE]  = NPF_Write;
-    DriverObject->MajorFunction[IRP_MJ_DEVICE_CONTROL]  = NPF_IoControl;
+    DriverObject->MajorFunction[IRP_MJ_CREATE] = (PDRIVER_DISPATCH)NPF_Open;
+    DriverObject->MajorFunction[IRP_MJ_CLOSE]  = (PDRIVER_DISPATCH)NPF_Close;
+    DriverObject->MajorFunction[IRP_MJ_READ]   = (PDRIVER_DISPATCH)NPF_Read;
+    DriverObject->MajorFunction[IRP_MJ_WRITE]  = (PDRIVER_DISPATCH)NPF_Write;
+    DriverObject->MajorFunction[IRP_MJ_DEVICE_CONTROL]  = (PDRIVER_DISPATCH)NPF_IoControl;
     DriverObject->DriverUnload = NPF_Unload;
 
 /*
     DriverObject->DriverUnload = NPF_Unload;
 
 /*
index 4eb6410..3742064 100644 (file)
@@ -280,4 +280,5 @@ uint32 tcp_session(uint8 *block, uint32 pkt_size, TME_DATA *data, MEM_TYPE *mem_
                session->timestamp_block=session->last_timestamp;
        
        return TME_SUCCESS;
                session->timestamp_block=session->last_timestamp;
        
        return TME_SUCCESS;
-}
\ No newline at end of file
+}
+
index 6262e79..4faf7b7 100644 (file)
@@ -82,4 +82,5 @@ typedef struct __tcp_data
 #define TCP_SESSION                     0x00000800
 uint32 tcp_session(uint8 *block, uint32 pkt_size, TME_DATA *data, MEM_TYPE *mem_ex, uint8 *mem_data);
 
 #define TCP_SESSION                     0x00000800
 uint32 tcp_session(uint8 *block, uint32 pkt_size, TME_DATA *data, MEM_TYPE *mem_ex, uint8 *mem_data);
 
-#endif
\ No newline at end of file
+#endif
+
index 87ed7dc..1bb5e8e 100644 (file)
@@ -375,4 +375,5 @@ uint32 set_autodeletion(TME_DATA *data, uint32 value)
                data->enable_deletion=TRUE;
 
        return TME_SUCCESS;
                data->enable_deletion=TRUE;
 
        return TME_SUCCESS;
-}
\ No newline at end of file
+}
+
index 4140f9f..a9c3645 100644 (file)
@@ -179,4 +179,5 @@ uint32 set_autodeletion(TME_DATA *data, uint32 value);
 lut_fcn lut_fcn_mapper(uint32 index);
 exec_fcn exec_fcn_mapper(uint32 index);
 
 lut_fcn lut_fcn_mapper(uint32 index);
 exec_fcn exec_fcn_mapper(uint32 index);
 
-#endif
\ No newline at end of file
+#endif
+
index 76dee6e..39b108d 100644 (file)
@@ -958,4 +958,5 @@ bpf_validate(f, len,mem_ex_size)
                        return 0;
        }
        return BPF_CLASS(f[len - 1].code) == BPF_RET;
                        return 0;
        }
        return BPF_CLASS(f[len - 1].code) == BPF_RET;
-}
\ No newline at end of file
+}
+
index 8b06af7..24561c7 100644 (file)
@@ -28,4 +28,5 @@
 
 uint32 bpf_filter_init(register struct bpf_insn *pc,MEM_TYPE *mem_ex, TME_CORE *tme, struct time_conv *time_ref);
 
 
 uint32 bpf_filter_init(register struct bpf_insn *pc,MEM_TYPE *mem_ex, TME_CORE *tme, struct time_conv *time_ref);
 
-#endif
\ No newline at end of file
+#endif
+
index e2c5fde..26717b6 100644 (file)
@@ -248,4 +248,5 @@ uint32 bucket_lookup_insert(uint8 *key, TME_DATA *data, MEM_TYPE *mem_ex, struct
                
                return TME_TRUE;
        }
                
                return TME_TRUE;
        }
-}
\ No newline at end of file
+}
+
index 512d637..e4caf2a 100644 (file)
@@ -40,4 +40,5 @@ uint32 bucket_lookup_insert(uint8 *key, TME_DATA *data, MEM_TYPE *mem_ex, struct
 #define BUCKET_LOOKUP           0x00000010
 uint32 bucket_lookup(uint8 *key, TME_DATA *data, MEM_TYPE *mem_ex, struct time_conv *time_ref);
 
 #define BUCKET_LOOKUP           0x00000010
 uint32 bucket_lookup(uint8 *key, TME_DATA *data, MEM_TYPE *mem_ex, struct time_conv *time_ref);
 
-#endif
\ No newline at end of file
+#endif
+
index 99f916b..988f561 100644 (file)
 #include <ddk/ntddk.h>
 #include <net/ndis.h>
 //#define PsGetCurrentProcess() IoGetCurrentProcess()
 #include <ddk/ntddk.h>
 #include <net/ndis.h>
 //#define PsGetCurrentProcess() IoGetCurrentProcess()
+#ifndef PsGetCurrentThread
 #define PsGetCurrentThread() ((PETHREAD) (KeGetCurrentThread()))
 #endif
 #define PsGetCurrentThread() ((PETHREAD) (KeGetCurrentThread()))
 #endif
+#endif
 
 #include "debug.h"
 #include "packet.h"
 
 #include "debug.h"
 #include "packet.h"
@@ -248,7 +250,7 @@ NPF_StartDump(POPEN_INSTANCE Open)
         THREAD_ALL_ACCESS,
         NULL,
         KernelMode,
         THREAD_ALL_ACCESS,
         NULL,
         KernelMode,
-        &Open->DumpThreadObject,
+        (VOID **)&Open->DumpThreadObject,
         0);
     if ( !NT_SUCCESS( ntStatus ) )
     {
         0);
     if ( !NT_SUCCESS( ntStatus ) )
     {
index 04c7e4b..b6d4aa3 100644 (file)
@@ -80,3 +80,4 @@ exec_fcn exec_fcn_mapper(uint32 index)
        
        return NULL;
 }
        
        return NULL;
 }
+
index d25c679..0ba2bfa 100644 (file)
@@ -64,4 +64,5 @@ exec_fcn exec_fcn_mapper(uint32 index);
 #include <ne/tme/tcp_session.h>
 #endif
 
 #include <ne/tme/tcp_session.h>
 #endif
 
-#endif
\ No newline at end of file
+#endif
+
index ea6442f..4b5ecf6 100644 (file)
@@ -189,3 +189,4 @@ uint32 normal_lut_wo_insert(uint8 *key, TME_DATA *data, MEM_TYPE *mem_ex, struct
        return TME_FALSE;
 
 }
        return TME_FALSE;
 
 }
+
index 69e21ce..c89194f 100644 (file)
@@ -42,4 +42,5 @@ uint32 normal_lut_w_insert(uint8 *key, TME_DATA *data, MEM_TYPE *mem_ex, struct
 uint32 normal_lut_wo_insert(uint8 *key, TME_DATA *data, MEM_TYPE *mem_ex, struct time_conv *time_ref); 
 #define DUMMY_INSERT                    1234
 
 uint32 normal_lut_wo_insert(uint8 *key, TME_DATA *data, MEM_TYPE *mem_ex, struct time_conv *time_ref); 
 #define DUMMY_INSERT                    1234
 
-#endif
\ No newline at end of file
+#endif
+
index dc063f5..29b0365 100644 (file)
@@ -96,7 +96,7 @@ DriverEntry(
     UNICODE_STRING UnicodeDeviceName;
     PDEVICE_OBJECT DeviceObject = NULL;
     PDEVICE_EXTENSION DeviceExtension = NULL;
     UNICODE_STRING UnicodeDeviceName;
     PDEVICE_OBJECT DeviceObject = NULL;
     PDEVICE_EXTENSION DeviceExtension = NULL;
-    NTSTATUS Status = STATUS_SUCCESS;
+    NDIS_STATUS Status = NDIS_STATUS_SUCCESS;
     NTSTATUS ErrorCode = STATUS_SUCCESS;
     NDIS_STRING ProtoName = NDIS_STRING_CONST("PacketDriver");
     ULONG          DevicesCreated=0;
     NTSTATUS ErrorCode = STATUS_SUCCESS;
     NDIS_STRING ProtoName = NDIS_STRING_CONST("PacketDriver");
     ULONG          DevicesCreated=0;
@@ -594,6 +594,7 @@ BOOLEAN createDevice(IN OUT PDRIVER_OBJECT adriverObjectP,
 //-------------------------------------------------------------------
 
 VOID
 //-------------------------------------------------------------------
 
 VOID
+STDCALL_FUNC
 NPF_Unload(IN PDRIVER_OBJECT DriverObject)
 {
     PDEVICE_OBJECT     DeviceObject;
 NPF_Unload(IN PDRIVER_OBJECT DriverObject)
 {
     PDEVICE_OBJECT     DeviceObject;
index a3582cc..10e484f 100644 (file)
 
   This IOCTL is used to perform an OID set operation on the NIC driver. 
 */
 
   This IOCTL is used to perform an OID set operation on the NIC driver. 
 */
-#define  BIOCSETOID 2147483648
+#define  BIOCSETOID 2147483648U
 
 /*!
   \brief IOCTL code: get an OID value
 
   This IOCTL is used to perform an OID get operation on the NIC driver. 
 */
 
 /*!
   \brief IOCTL code: get an OID value
 
   This IOCTL is used to perform an OID get operation on the NIC driver. 
 */
-#define  BIOCQUERYOID 2147483652
+#define  BIOCQUERYOID 2147483652U
 
 /*!
   \brief IOCTL code: set the name of a the file used by kernel dump mode
 
 /*!
   \brief IOCTL code: set the name of a the file used by kernel dump mode
@@ -713,6 +713,7 @@ NPF_StatusComplete(IN NDIS_HANDLE  ProtocolBindingContext);
   service (from control panel or with a console 'net stop npf').
 */
 VOID
   service (from control panel or with a console 'net stop npf').
 */
 VOID
+STDCALL_FUNC
 NPF_Unload(IN PDRIVER_OBJECT DriverObject);
 
 
 NPF_Unload(IN PDRIVER_OBJECT DriverObject);
 
 
index 4eb6410..3742064 100644 (file)
@@ -280,4 +280,5 @@ uint32 tcp_session(uint8 *block, uint32 pkt_size, TME_DATA *data, MEM_TYPE *mem_
                session->timestamp_block=session->last_timestamp;
        
        return TME_SUCCESS;
                session->timestamp_block=session->last_timestamp;
        
        return TME_SUCCESS;
-}
\ No newline at end of file
+}
+
index 6262e79..4faf7b7 100644 (file)
@@ -82,4 +82,5 @@ typedef struct __tcp_data
 #define TCP_SESSION                     0x00000800
 uint32 tcp_session(uint8 *block, uint32 pkt_size, TME_DATA *data, MEM_TYPE *mem_ex, uint8 *mem_data);
 
 #define TCP_SESSION                     0x00000800
 uint32 tcp_session(uint8 *block, uint32 pkt_size, TME_DATA *data, MEM_TYPE *mem_ex, uint8 *mem_data);
 
-#endif
\ No newline at end of file
+#endif
+
index 4140f9f..a9c3645 100644 (file)
@@ -179,4 +179,5 @@ uint32 set_autodeletion(TME_DATA *data, uint32 value);
 lut_fcn lut_fcn_mapper(uint32 index);
 exec_fcn exec_fcn_mapper(uint32 index);
 
 lut_fcn lut_fcn_mapper(uint32 index);
 exec_fcn exec_fcn_mapper(uint32 index);
 
-#endif
\ No newline at end of file
+#endif
+
index 76dee6e..39b108d 100644 (file)
@@ -958,4 +958,5 @@ bpf_validate(f, len,mem_ex_size)
                        return 0;
        }
        return BPF_CLASS(f[len - 1].code) == BPF_RET;
                        return 0;
        }
        return BPF_CLASS(f[len - 1].code) == BPF_RET;
-}
\ No newline at end of file
+}
+
index 8b06af7..24561c7 100644 (file)
@@ -28,4 +28,5 @@
 
 uint32 bpf_filter_init(register struct bpf_insn *pc,MEM_TYPE *mem_ex, TME_CORE *tme, struct time_conv *time_ref);
 
 
 uint32 bpf_filter_init(register struct bpf_insn *pc,MEM_TYPE *mem_ex, TME_CORE *tme, struct time_conv *time_ref);
 
-#endif
\ No newline at end of file
+#endif
+
index dde71b9..fb11c74 100644 (file)
@@ -400,12 +400,12 @@ NTSTATUS TiCleanupFileObject(
 
 
 NTSTATUS
 
 
 NTSTATUS
-#ifndef _MSC_VER
-STDCALL
-#endif
+//#ifndef _MSC_VER
+STDCALL_FUNC
+//#endif
 TiDispatchOpenClose(
 TiDispatchOpenClose(
-  PDEVICE_OBJECT DeviceObject,
-  PIRP Irp)
+  IN PDEVICE_OBJECT DeviceObject,
+  IN PIRP Irp)
 /*
  * FUNCTION: Main dispath routine
  * ARGUMENTS:
 /*
  * FUNCTION: Main dispath routine
  * ARGUMENTS:
@@ -872,11 +872,11 @@ DriverEntry(
   TCPDeviceObject->Flags   |= DO_DIRECT_IO;
 
   /* Initialize the driver object with this driver's entry points */
   TCPDeviceObject->Flags   |= DO_DIRECT_IO;
 
   /* Initialize the driver object with this driver's entry points */
-  DriverObject->MajorFunction[IRP_MJ_CREATE]  = TiDispatchOpenClose;
-  DriverObject->MajorFunction[IRP_MJ_CLOSE]   = TiDispatchOpenClose;
-  DriverObject->MajorFunction[IRP_MJ_CLEANUP] = TiDispatchOpenClose;
-  DriverObject->MajorFunction[IRP_MJ_INTERNAL_DEVICE_CONTROL] = TiDispatchInternal;
-  DriverObject->MajorFunction[IRP_MJ_DEVICE_CONTROL] = TiDispatch;
+  DriverObject->MajorFunction[IRP_MJ_CREATE]  = (PDRIVER_DISPATCH)TiDispatchOpenClose;
+  DriverObject->MajorFunction[IRP_MJ_CLOSE]   = (PDRIVER_DISPATCH)TiDispatchOpenClose;
+  DriverObject->MajorFunction[IRP_MJ_CLEANUP] = (PDRIVER_DISPATCH)TiDispatchOpenClose;
+  DriverObject->MajorFunction[IRP_MJ_INTERNAL_DEVICE_CONTROL] = (PDRIVER_DISPATCH)TiDispatchInternal;
+  DriverObject->MajorFunction[IRP_MJ_DEVICE_CONTROL] = (PDRIVER_DISPATCH)TiDispatch;
 
   DriverObject->DriverUnload = (PDRIVER_UNLOAD)TiUnload;
 
 
   DriverObject->DriverUnload = (PDRIVER_UNLOAD)TiUnload;
 
index edbb297..f49daf7 100644 (file)
@@ -137,7 +137,7 @@ __inline INT SkipToOffset(
         if (!Buffer)
             return -1;
 
         if (!Buffer)
             return -1;
 
-        NdisQueryBuffer(Buffer, Data, Size);
+        NdisQueryBuffer(Buffer, (PVOID)Data, Size);
 
         if (Offset < *Size) {
             ((ULONG_PTR)*Data) += Offset;
 
         if (Offset < *Size) {
             ((ULONG_PTR)*Data) += Offset;
@@ -203,7 +203,7 @@ UINT CopyBufferToBufferChain(
             if (!DstBuffer)
                 break;
 
             if (!DstBuffer)
                 break;
 
-            NdisQueryBuffer(DstBuffer, &DstData, &DstSize);
+            NdisQueryBuffer(DstBuffer, (PVOID)&DstData, &DstSize);
         }
     }
 
         }
     }
 
@@ -262,7 +262,7 @@ UINT CopyBufferChainToBuffer(
             if (!SrcBuffer)
                 break;
 
             if (!SrcBuffer)
                 break;
 
-            NdisQueryBuffer(SrcBuffer, &SrcData, &SrcSize);
+            NdisQueryBuffer(SrcBuffer, (PVOID)&SrcData, &SrcSize);
         }
     }
 
         }
     }
 
@@ -335,12 +335,12 @@ UINT CopyPacketToBufferChain(
     TI_DbgPrint(DEBUG_BUFFER, ("DstBuffer (0x%X)  DstOffset (0x%X)  SrcPacket (0x%X)  SrcOffset (0x%X)  Length (%d)\n", DstBuffer, DstOffset, SrcPacket, SrcOffset, Length));
 
     /* Skip DstOffset bytes in the destination buffer chain */
     TI_DbgPrint(DEBUG_BUFFER, ("DstBuffer (0x%X)  DstOffset (0x%X)  SrcPacket (0x%X)  SrcOffset (0x%X)  Length (%d)\n", DstBuffer, DstOffset, SrcPacket, SrcOffset, Length));
 
     /* Skip DstOffset bytes in the destination buffer chain */
-    NdisQueryBuffer(DstBuffer, &DstData, &DstSize);
+    NdisQueryBuffer(DstBuffer, (PVOID)&DstData, &DstSize);
     if (SkipToOffset(DstBuffer, DstOffset, &DstData, &DstSize) == -1)
         return 0;
 
     /* Skip SrcOffset bytes in the source packet */
     if (SkipToOffset(DstBuffer, DstOffset, &DstData, &DstSize) == -1)
         return 0;
 
     /* Skip SrcOffset bytes in the source packet */
-    NdisGetFirstBufferFromPacket(SrcPacket, &SrcBuffer, &SrcData, &SrcSize, &Total);
+    NdisGetFirstBufferFromPacket(SrcPacket, &SrcBuffer, (PVOID)&SrcData, &SrcSize, &Total);
     if (SkipToOffset(SrcBuffer, SrcOffset, &SrcData, &SrcSize) == -1)
         return 0;
 
     if (SkipToOffset(SrcBuffer, SrcOffset, &SrcData, &SrcSize) == -1)
         return 0;
 
@@ -369,7 +369,7 @@ UINT CopyPacketToBufferChain(
             if (!DstBuffer)
                 break;
 
             if (!DstBuffer)
                 break;
 
-            NdisQueryBuffer(DstBuffer, &DstData, &DstSize);
+            NdisQueryBuffer(DstBuffer, (PVOID)&DstData, &DstSize);
         }
 
         SrcSize -= Count;
         }
 
         SrcSize -= Count;
@@ -380,7 +380,7 @@ UINT CopyPacketToBufferChain(
             if (!SrcBuffer)
                 break;
 
             if (!SrcBuffer)
                 break;
 
-            NdisQueryBuffer(SrcBuffer, &SrcData, &SrcSize);
+            NdisQueryBuffer(SrcBuffer, (PVOID)&SrcData, &SrcSize);
         }
     }
 
         }
     }
 
index c20b019..c85c2ac 100755 (executable)
@@ -15,7 +15,7 @@
  *
  *             Implementation of the Transmission Control Protocol(TCP).
  *
  *
  *             Implementation of the Transmission Control Protocol(TCP).
  *
- * Version:    $Id: tcp_output.c,v 1.1 2003/01/15 21:57:31 chorns Exp $
+ * Version:    $Id: tcp_output.c,v 1.2 2003/07/24 18:14:59 royce Exp $
  *
  * Authors:    Ross Biro, <bir7@leland.Stanford.Edu>
  *             Fred N. van Kempen, <waltje@uWalt.NL.Mugnet.ORG>
  *
  * Authors:    Ross Biro, <bir7@leland.Stanford.Edu>
  *             Fred N. van Kempen, <waltje@uWalt.NL.Mugnet.ORG>
@@ -1418,7 +1418,7 @@ void tcp_send_ack(struct sock *sk)
                tcp_transmit_skb(sk, buff);
        }
 #else
                tcp_transmit_skb(sk, buff);
        }
 #else
-  return 0;
+  return;
 #endif
 }
 
 #endif
 }
 
index ee80cc3..067baef 100644 (file)
@@ -41,6 +41,8 @@ extern DWORD DebugTraceLevel;
 
 #endif /* _MSC_VER */
 
 
 #endif /* _MSC_VER */
 
+/* in rtl.h now */
+#if 0
 #ifdef ASSERT
 #undef ASSERT
 #endif
 #ifdef ASSERT
 #undef ASSERT
 #endif
@@ -50,7 +52,7 @@ extern DWORD DebugTraceLevel;
 #else /* NASSERT */
 #define ASSERT(x) if (!(x)) { TDI_DbgPrint(MIN_TRACE, ("Assertion "#x" failed at %s:%d\n", __FILE__, __LINE__)); KeBugCheck(0); }
 #endif /* NASSERT */
 #else /* NASSERT */
 #define ASSERT(x) if (!(x)) { TDI_DbgPrint(MIN_TRACE, ("Assertion "#x" failed at %s:%d\n", __FILE__, __LINE__)); KeBugCheck(0); }
 #endif /* NASSERT */
-
+#endif
 #define ASSERT_IRQL(x) ASSERT(KeGetCurrentIrql() <= (x))
 
 #else /* DBG */
 #define ASSERT_IRQL(x) ASSERT(KeGetCurrentIrql() <= (x))
 
 #else /* DBG */
index ec9e995..c4f80df 100644 (file)
@@ -28,6 +28,8 @@ extern DWORD DebugTraceLevel;
                DbgPrint _x_; \
     }
 
                DbgPrint _x_; \
     }
 
+/* this belongs in rtl */
+#if 0
 #ifdef ASSERT
 #undef ASSERT
 #endif
 #ifdef ASSERT
 #undef ASSERT
 #endif
@@ -37,12 +39,13 @@ extern DWORD DebugTraceLevel;
 #else /* NASSERT */
 #define ASSERT(x) if (!(x)) { WSH_DbgPrint(MIN_TRACE, ("Assertion "#x" failed at %s:%d\n", __FILE__, __LINE__)); ExitProcess(0); }
 #endif /* NASSERT */
 #else /* NASSERT */
 #define ASSERT(x) if (!(x)) { WSH_DbgPrint(MIN_TRACE, ("Assertion "#x" failed at %s:%d\n", __FILE__, __LINE__)); ExitProcess(0); }
 #endif /* NASSERT */
+#endif
 
 #else /* DBG */
 
 #define WSH_DbgPrint(_t_, _x_)
 
 
 #else /* DBG */
 
 #define WSH_DbgPrint(_t_, _x_)
 
-#define ASSERT(x)
+/*#define ASSERT(x)*/
 
 #endif /* DBG */
 
 
 #endif /* DBG */
 
index 51b3621..52e6a5c 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: psfuncs.h,v 1.24 2003/06/20 16:19:33 ekohl Exp $
+/* $Id: psfuncs.h,v 1.25 2003/07/24 18:14:59 royce Exp $
  */
 #ifndef _INCLUDE_DDK_PSFUNCS_H
 #define _INCLUDE_DDK_PSFUNCS_H
  */
 #ifndef _INCLUDE_DDK_PSFUNCS_H
 #define _INCLUDE_DDK_PSFUNCS_H
@@ -31,7 +31,7 @@ NTSTATUS STDCALL PsCreateSystemThread(PHANDLE ThreadHandle,
                                      HANDLE ProcessHandle,
                                      PCLIENT_ID ClientId,
                                      PKSTART_ROUTINE StartRoutine,
                                      HANDLE ProcessHandle,
                                      PCLIENT_ID ClientId,
                                      PKSTART_ROUTINE StartRoutine,
-                                     PVOID StartContext);
+                                     void *StartContext);
 NTSTATUS STDCALL PsTerminateSystemThread(NTSTATUS ExitStatus);
 
 NTSTATUS STDCALL PsCreateSystemProcess(PHANDLE ProcessHandle,
 NTSTATUS STDCALL PsTerminateSystemThread(NTSTATUS ExitStatus);
 
 NTSTATUS STDCALL PsCreateSystemProcess(PHANDLE ProcessHandle,
index 533a8ff..6862292 100644 (file)
@@ -4,6 +4,7 @@
  * FILE:        include/net/miniport.h
  * PURPOSE:     Type definitions available only to NDIS miniport drivers
  */
  * FILE:        include/net/miniport.h
  * PURPOSE:     Type definitions available only to NDIS miniport drivers
  */
+#if 0
 #ifndef __MINIPORT_H
 #define __MINIPORT_H
 
 #ifndef __MINIPORT_H
 #define __MINIPORT_H
 
@@ -847,3 +848,4 @@ WRITE_REGISTER_USHORT(
 #endif /* __MINIPORT_H */
 
 /* EOF */
 #endif /* __MINIPORT_H */
 
 /* EOF */
+#endif
index b88a48a..6dd62be 100644 (file)
@@ -6,11 +6,24 @@
  * DEFINES:     i386                 - Target platform is i386
  *              NDIS_WRAPPER         - Define only for NDIS wrapper library
  *              NDIS_MINIPORT_DRIVER - Define only for NDIS miniport drivers
  * DEFINES:     i386                 - Target platform is i386
  *              NDIS_WRAPPER         - Define only for NDIS wrapper library
  *              NDIS_MINIPORT_DRIVER - Define only for NDIS miniport drivers
- *              BINARY_COMPATIBLE    - 0 = Use macros for some features
- *                                   - 1 = Use imports for features not available
  *              NDIS40               - Use NDIS 4.0 structures by default
  *              NDIS50               - Use NDIS 5.0 structures by default
  *              NDIS40               - Use NDIS 4.0 structures by default
  *              NDIS50               - Use NDIS 5.0 structures by default
+ *              NDIS_WDM             - Include wdm.h (currently just pulls in ntddk.h)
+ *
+ * NOTES:       If NDIS_WDM is not defined, ntddk.h is included instead
+ *
+ * I have removed the following standard flag, used for building binary-compatible
+ * drivers for windows 98 and windows me:
+ *
+ *              BINARY_COMPATIBLE    - 0 = Use macros for some features
+ *                                   - 1 = Use imports for features not available
+ *
+ * rationale:  you're never going to use *this* ndis.h to build a driver for win9x.  You'll
+ * use the MS ddk.  This assumption drammatically simplifies ndis.h.
  */
  */
+
+// TODO:  finish sanitizing NDIS40 and NDIS50; think about NDIS51
+
 #ifndef __NDIS_H
 #define __NDIS_H
 
 #ifndef __NDIS_H
 #define __NDIS_H
 
@@ -24,16 +37,6 @@ extern "C"
 #define NDIS40
 #endif
 
 #define NDIS40
 #endif
 
-
-/* Windows 9x compatibillity for miniports on x86 platform */
-#ifndef BINARY_COMPATIBLE
-#if defined(NDIS_MINIPORT_DRIVER) && defined(i386)
-#define BINARY_COMPATIBLE 1
-#else
-#define BINARY_COMPATIBLE 0
-#endif
-#endif
-
 #ifndef UNALIGNED
 #define UNALIGNED
 #endif
 #ifndef UNALIGNED
 #define UNALIGNED
 #endif
@@ -42,13 +45,13 @@ extern "C"
 #define FASTCALL  __attribute__((fastcall))
 #endif
 
 #define FASTCALL  __attribute__((fastcall))
 #endif
 
-/* The NDIS library export functions. NDIS miniport drivers import functions */
+/* The NDIS library exports functions. NDIS miniport drivers import functions */
 #ifdef NDIS_WRAPPER
 
 #ifdef _MSC_VER
 #define EXPIMP __declspec(dllexport)
 #else
 #ifdef NDIS_WRAPPER
 
 #ifdef _MSC_VER
 #define EXPIMP __declspec(dllexport)
 #else
-#define EXPIMP STDCALL
+#define EXPIMP STDCALL /* MS ndis.h is 100% stdcall due to compiler flag /Gz */
 #endif
 
 #else /* NDIS_WRAPPER */
 #endif
 
 #else /* NDIS_WRAPPER */
@@ -61,23 +64,39 @@ extern "C"
 
 #endif /* NDIS_WRAPPER */
 
 
 #endif /* NDIS_WRAPPER */
 
+/* support NDIS_WDM and MAC drivers */
+#if defined (NDIS_WDM)
+#include <wdm.h>
+#else
+#include <ntddk.h>
+#endif
 
 
+/* Assert stuff */
+#ifdef DBG
+VOID
+STDCALL
+RtlAssert (
+       PVOID FailedAssertion,
+       PVOID FileName,
+       ULONG LineNumber,
+       PCHAR Message
+       );
 
 
-#ifdef NDIS_MINIPORT_DRIVER
-
-#include "miniport.h"
-
-#else /* NDIS_MINIPORT_DRIVER */
+#define ASSERT( exp ) if (!(exp)) RtlAssert( #exp, __FILE__, __LINE__, NULL )
+#define ASSERTMSG( msg, exp ) if (!(exp)) RtlAssert( #exp, __FILE__, __LINE__, msg )
 
 
-#ifdef _MSC_VER
-#include <ntddk.h>
+#else
+#define ASSERT( exp )
+#define ASSERTMSG( msg, exp )
+#endif /* DBG */
 
 
-typedef ULONG ULONG_PTR, *PULONG_PTR;
+/* Base types */
 
 
-#else /* _MSC_VER */
-#include <ddk/ntddk.h>
+#define IN
+#define OUT
+#define OPTIONAL
 
 
-/* FIXME: Missed some definitions in there */
+typedef CONST CHAR *PCSTR;
 
 typedef struct _DMA_CONFIGURATION_BYTE0
 {
 
 typedef struct _DMA_CONFIGURATION_BYTE0
 {
@@ -182,34 +201,35 @@ typedef struct _CM_EISA_FUNCTION_INFORMATION
     UCHAR   InitializationData[60];
 } CM_EISA_FUNCTION_INFORMATION, *PCM_EISA_FUNCTION_INFORMATION;
 
     UCHAR   InitializationData[60];
 } CM_EISA_FUNCTION_INFORMATION, *PCM_EISA_FUNCTION_INFORMATION;
 
-#endif /* _MSC_VER */
+ULONG CDECL DbgPrint(
+    PCH Format,
+    ...);
 
 
-/* FIXME: Missed some definitions in there */
 
 
-typedef CONST CHAR *PCSTR;
+/* Core kernel functions */
+
+VOID
+STDCALL
+KeStallExecutionProcessor(
+    ULONG   MicroSeconds);
 
 
-#endif /* NDIS_MINIPORT_DRIVER */
 
 #include "netevent.h"
 #include "ndisoid.h"
 #include "ntddndis.h"
 
 
 
 #include "netevent.h"
 #include "ndisoid.h"
 #include "ntddndis.h"
 
 
-#if defined(NDIS_MINIPORT_DRIVER) || !defined(_MSC_VER)
-
+#if !defined(_MSC_VER)
 #ifndef _GUID_DEFINED
 #define _GUID_DEFINED
 #ifndef _GUID_DEFINED
 #define _GUID_DEFINED
-
 typedef struct _GUID {
     ULONG   Data1;
     USHORT  Data2;
     USHORT  Data3;
     UCHAR   Data4[8];
 } GUID;
 typedef struct _GUID {
     ULONG   Data1;
     USHORT  Data2;
     USHORT  Data3;
     UCHAR   Data4[8];
 } GUID;
-
 #endif /* _GUID_DEFINED */
 #endif /* _GUID_DEFINED */
-
-#endif /* NDIS_MINIPORT_DRIVER || _MSC_VER */
+#endif /* _MSC_VER */
 
 
 /* NDIS base types */
 
 
 /* NDIS base types */
@@ -230,8 +250,6 @@ typedef int NDIS_STATUS, *PNDIS_STATUS;
 
 typedef UNICODE_STRING NDIS_STRING, *PNDIS_STRING;
 
 
 typedef UNICODE_STRING NDIS_STRING, *PNDIS_STRING;
 
-typedef PCSTR NDIS_ANSI_STRING, *PNDIS_ANSI_STRING;
-
 typedef MDL NDIS_BUFFER, *PNDIS_BUFFER;
 
 /* NDIS_STATUS constants */
 typedef MDL NDIS_BUFFER, *PNDIS_BUFFER;
 
 /* NDIS_STATUS constants */
@@ -338,11 +356,12 @@ typedef MDL NDIS_BUFFER, *PNDIS_BUFFER;
 #define NDIS_MEMORY_NONCACHED   0x00000002
 
 /* NIC attribute flags. Used by NdisMSetAttributes(Ex) */
 #define NDIS_MEMORY_NONCACHED   0x00000002
 
 /* NIC attribute flags. Used by NdisMSetAttributes(Ex) */
-#define        NDIS_ATTRIBUTE_IGNORE_PACKET_TIMEOUT    0x00000001
+#define NDIS_ATTRIBUTE_IGNORE_PACKET_TIMEOUT    0x00000001
 #define NDIS_ATTRIBUTE_IGNORE_REQUEST_TIMEOUT   0x00000002
 #define NDIS_ATTRIBUTE_IGNORE_TOKEN_RING_ERRORS 0x00000004
 #define NDIS_ATTRIBUTE_BUS_MASTER               0x00000008
 #define NDIS_ATTRIBUTE_INTERMEDIATE_DRIVER      0x00000010
 #define NDIS_ATTRIBUTE_IGNORE_REQUEST_TIMEOUT   0x00000002
 #define NDIS_ATTRIBUTE_IGNORE_TOKEN_RING_ERRORS 0x00000004
 #define NDIS_ATTRIBUTE_BUS_MASTER               0x00000008
 #define NDIS_ATTRIBUTE_INTERMEDIATE_DRIVER      0x00000010
+#define NDIS_ATTRIBUTE_DESERIALIZE              0x00000020
 
 
 
 
 
 
@@ -395,6 +414,18 @@ typedef struct _NDIS_TIMER
     KDPC    Dpc;
 } NDIS_TIMER, *PNDIS_TIMER;
 
     KDPC    Dpc;
 } NDIS_TIMER, *PNDIS_TIMER;
 
+VOID
+EXPIMP
+NdisInitializeTimer(
+    IN OUT  PNDIS_TIMER             Timer,
+    IN      PNDIS_TIMER_FUNCTION    TimerFunction,
+    IN      PVOID                   FunctionContext);
+
+VOID
+EXPIMP
+NdisSetTimer(
+    IN PNDIS_TIMER  Timer,
+    IN UINT         MillisecondsToDelay);
 
 
 /* Hardware */
 
 
 /* Hardware */
@@ -615,6 +646,14 @@ typedef struct _NDIS_REQUEST {
             UINT      BytesNeeded;
         } SET_INFORMATION;
    } DATA;
             UINT      BytesNeeded;
         } SET_INFORMATION;
    } DATA;
+#ifdef NDIS50
+        UCHAR NdisReserved[36];
+        union {
+        UCHAR CallMgrReserved[8];
+                 UCHAR ProtocolReserved[8];
+        };
+        UCHAR MiniportReserved[8];
+#endif
 } NDIS_REQUEST, *PNDIS_REQUEST;
 
 
 } NDIS_REQUEST, *PNDIS_REQUEST;
 
 
@@ -739,8 +778,6 @@ typedef enum _NDIS_PNP_DEVICE_STATE
 #endif /* NDIS_WRAPPER */
 
 
 #endif /* NDIS_WRAPPER */
 
 
-#ifdef NDIS50
-
 typedef struct _ATM_ADDRESS ATM_ADDRESS, *PATM_ADDRESS;
 
 
 typedef struct _ATM_ADDRESS ATM_ADDRESS, *PATM_ADDRESS;
 
 
@@ -1174,8 +1211,6 @@ typedef struct _NDIS_CLIENT_CHARACTERISTICS
     CL_CALL_CONNECTED_HANDLER           ClCallConnectedHandler;
 } NDIS_CLIENT_CHARACTERISTICS, *PNDIS_CLIENT_CHARACTERISTICS;
 
     CL_CALL_CONNECTED_HANDLER           ClCallConnectedHandler;
 } NDIS_CLIENT_CHARACTERISTICS, *PNDIS_CLIENT_CHARACTERISTICS;
 
-#endif /* NDIS50 */
-
 
 
 /* NDIS protocol structures */
 
 
 /* NDIS protocol structures */
@@ -1565,100 +1600,31 @@ NdisUnchainBufferAtFront(
     IN OUT  PNDIS_PACKET    Packet,
     OUT     PNDIS_BUFFER    *Buffer);
 
     IN OUT  PNDIS_PACKET    Packet,
     OUT     PNDIS_BUFFER    *Buffer);
 
-#if BINARY_COMPATIBLE
-
-VOID
-EXPIMP
-NdisAdjustBufferLength(
-    IN PNDIS_BUFFER Buffer,
-    IN UINT         Length);
-
-ULONG
-EXPIMP
-NDIS_BUFFER_TO_SPAN_PAGES(
-    IN PNDIS_BUFFER  Buffer);
-
-VOID
-EXPIMP
-NdisFreeBuffer(
-    IN  PNDIS_BUFFER    Buffer);
-
-VOID
-EXPIMP
-NdisGetBufferPhysicalArraySize(
-    IN  PNDIS_BUFFER    Buffer,
-    OUT PUINT           ArraySize);
-
-VOID
-EXPIMP
-NdisGetFirstBufferFromPacket(
-    IN  PNDIS_PACKET    _Packet,
-    OUT PNDIS_BUFFER    *_FirstBuffer,
-    OUT PVOID           *_FirstBufferVA,
-    OUT PUINT           _FirstBufferLength,
-    OUT PUINT           _TotalBufferLength);
-
-VOID
-EXPIMP
-NdisQueryBuffer(
-    IN  PNDIS_BUFFER    Buffer,
-    OUT PVOID           *VirtualAddress OPTIONAL,
-    OUT PUINT           Length);
-
-VOID
-EXPIMP
-NdisQueryBufferOffset(
-    IN  PNDIS_BUFFER    Buffer,
-    OUT PUINT           Offset,
-    OUT PUINT           Length);
-
-#else /* BINARY_COMPATIBLE */
-
 /*
  * PVOID NdisAdjustBufferLength(
  *     IN  PNDIS_BUFFER    Buffer,
  *     IN  UINT            Length);
  */
 /*
  * PVOID NdisAdjustBufferLength(
  *     IN  PNDIS_BUFFER    Buffer,
  *     IN  UINT            Length);
  */
-#define NdisAdjustBufferLength(Buffer,  \
-                               Length)  \
-{                                       \
-    (Buffer)->ByteCount = (Length);     \
-}
-
+VOID 
+EXPIMP
+NdisAdjustBufferLength(
+    IN  PNDIS_BUFFER    Buffer,
+    IN  UINT            Length);
 
 /*
  * ULONG NDIS_BUFFER_TO_SPAN_PAGES(
  *     IN  PNDIS_BUFFER    Buffer);
  */
 
 /*
  * ULONG NDIS_BUFFER_TO_SPAN_PAGES(
  *     IN  PNDIS_BUFFER    Buffer);
  */
-#define NDIS_BUFFER_TO_SPAN_PAGES(Buffer)   \
-(                                           \
-    MmGetMdlByteCount(Buffer) == 0 ?        \
-        1 :                                 \
-        ADDRESS_AND_SIZE_TO_SPAN_PAGES(     \
-            MmGetMdlVirtualAddress(Buffer), \
-            MmGetMdlByteCount(Buffer))      \
-)
-
-
-#if 0
-
-/*
- * VOID NdisFreeBuffer(
- *     IN  PNDIS_BUFFER    Buffer);
- */
-#define NdisFreeBuffer(Buffer)  \
-{                               \
-    IoFreeMdl(Buffer) /* ??? */ \
-}
-
-#else
+ULONG 
+EXPIMP
+NDIS_BUFFER_TO_SPAN_PAGES(
+    IN  PNDIS_BUFFER    Buffer);
 
 VOID
 EXPIMP
 NdisFreeBuffer(
     IN  PNDIS_BUFFER    Buffer);
 
 
 VOID
 EXPIMP
 NdisFreeBuffer(
     IN  PNDIS_BUFFER    Buffer);
 
-#endif
 
 
 /*
 
 
 /*
@@ -1666,11 +1632,11 @@ NdisFreeBuffer(
  *     IN  PNDIS_BUFFER    Buffer,
  *     OUT PUINT           ArraySize);
  */
  *     IN  PNDIS_BUFFER    Buffer,
  *     OUT PUINT           ArraySize);
  */
-#define NdisGetBufferPhysicalArraySize(Buffer,      \
-                                       ArraySize)   \
-{                                                   \
-}
-
+VOID 
+EXPIMP
+NdisGetBufferPhysicalArraySize(
+    IN  PNDIS_BUFFER    Buffer,
+    OUT PUINT           ArraySize);
 
 /*
  * VOID NdisGetFirstBufferFromPacket(
 
 /*
  * VOID NdisGetFirstBufferFromPacket(
@@ -1680,62 +1646,28 @@ NdisFreeBuffer(
  *     OUT PUINT           _FirstBufferLength,
  *     OUT PUINT           _TotalBufferLength)
  */
  *     OUT PUINT           _FirstBufferLength,
  *     OUT PUINT           _TotalBufferLength)
  */
-#define        NdisGetFirstBufferFromPacket(Packet,                \
-                                     FirstBuffer,           \
-                                     FirstBufferVA,         \
-                                     FirstBufferLength,     \
-                                     TotalBufferLength)     \
-{                                                           \
-    PNDIS_BUFFER _Buffer;                                   \
-                                                            \
-    _Buffer              = (Packet)->Private.Head;          \
-    *(FirstBuffer)       = _Buffer;                         \
-    *(FirstBufferVA)     = MmGetMdlVirtualAddress(_Buffer); \
-    if (_Buffer != NULL) {                                  \
-        *(FirstBufferLength) = MmGetMdlByteCount(_Buffer);  \
-        _Buffer = _Buffer->Next;                            \
-    } else                                                  \
-        *(FirstBufferLength) = 0;                           \
-    *(TotalBufferLength) = *(FirstBufferLength);            \
-    while (_Buffer != NULL) {                               \
-        *(TotalBufferLength) += MmGetMdlByteCount(_Buffer); \
-        _Buffer = _Buffer->Next;                            \
-    }                                                       \
-}
-
-/*
- * VOID NdisQueryBuffer(
- *     IN  PNDIS_BUFFER    Buffer,
- *     OUT PVOID           *VirtualAddress OPTIONAL,
- *     OUT PUINT           Length)
- */
-#define NdisQueryBuffer(Buffer,                                       \
-                        VirtualAddress,                               \
-                        Length)                                       \
-{                                                                     \
-       if (VirtualAddress)                                               \
-               *((PVOID*)VirtualAddress) = MmGetSystemAddressForMdl(Buffer); \
-                                                                      \
-       *((PUINT)Length) = MmGetMdlByteCount(Buffer);                     \
-}
-
-
-/*
- * VOID NdisQueryBufferOffset(
- *     IN  PNDIS_BUFFER    Buffer,
- *     OUT PUINT           Offset,
- *     OUT PUINT           Length);
- */
-#define NdisQueryBufferOffset(Buffer,               \
-                              Offset,               \
-                              Length)               \
-{                                                   \
-    *((PUINT)Offset) = MmGetMdlByteOffset(Buffer);  \
-    *((PUINT)Length) = MmGetMdlByteCount(Buffer);   \
-}
+VOID
+EXPIMP
+NdisGetFirstBufferFromPacket(
+   IN  PNDIS_PACKET    _Packet,
+   OUT PNDIS_BUFFER    * _FirstBuffer,
+   OUT PVOID           * _FirstBufferVA,
+   OUT PUINT           _FirstBufferLength,
+   OUT PUINT           _TotalBufferLength);
 
 
-#endif /* BINARY_COMPATIBLE */
+VOID 
+EXPIMP
+NdisQueryBuffer(
+     IN  PNDIS_BUFFER    Buffer,
+     OUT PVOID           *VirtualAddress OPTIONAL,
+     OUT PUINT           Length);
 
 
+VOID 
+EXPIMP
+NdisQueryBufferOffset(
+    IN  PNDIS_BUFFER    Buffer,
+    OUT PUINT           Offset,
+    OUT PUINT           Length);
 
 /*
  * PVOID NDIS_BUFFER_LINKAGE(
 
 /*
  * PVOID NDIS_BUFFER_LINKAGE(
@@ -1805,7 +1737,6 @@ NdisFreeBuffer(
     *(NextBuffer) = (CurrentBuffer)->Next;  \
 }
 
     *(NextBuffer) = (CurrentBuffer)->Next;  \
 }
 
-
 /*
  * UINT NdisGetPacketFlags(
  *     IN  PNDIS_PACKET    Packet); 
 /*
  * UINT NdisGetPacketFlags(
  *     IN  PNDIS_PACKET    Packet); 
@@ -2321,49 +2252,16 @@ NdisImmediateWritePciSlotInformation(
 
 /* String management routines */
 
 
 /* String management routines */
 
-#if BINARY_COMPATIBLE
-
-NDIS_STATUS
-EXPIMP
-NdisAnsiStringToUnicodeString(
-    IN OUT  PNDIS_STRING        DestinationString,
-    IN      PNDIS_ANSI_STRING   SourceString);
-
-BOOLEAN
-EXPIMP
-NdisEqualString(
-    IN  PNDIS_STRING    String1,
-    IN  PNDIS_STRING    String2,
-    IN  BOOLEAN         CaseInsensitive);
-
-VOID
-EXPIMP
-NdisInitAnsiString(
-    IN OUT  PNDIS_ANSI_STRING   DestinationString,
-    IN      PCSTR               SourceString);
-
-VOID
-EXPIMP
-NdisInitUnicodeString(
-    IN OUT  PNDIS_STRING    DestinationString,
-    IN      PCWSTR          SourceString);
-
-NDIS_STATUS
-EXPIMP
-NdisUnicodeStringToAnsiString(
-    IN OUT  PNDIS_ANSI_STRING   DestinationString,
-    IN      PNDIS_STRING        SourceString);
-
-#else /* BINARY_COMPATIBLE */
-
 /*
  * NDIS_STATUS NdisAnsiStringToUnicodeString(
  *     IN OUT  PNDIS_STRING        DestinationString,
  *     IN      PNDIS_ANSI_STRING   SourceString);
  */
 /*
  * NDIS_STATUS NdisAnsiStringToUnicodeString(
  *     IN OUT  PNDIS_STRING        DestinationString,
  *     IN      PNDIS_ANSI_STRING   SourceString);
  */
-#define        NdisAnsiStringToUnicodeString(DestinationString,    \
-                                      SourceString)         \
-    RtlAnsiStringToUnicodeString((DestinationString), (SourceString), FALSE)
+NDIS_STATUS
+EXPIMP
+NdisAnsiStringToUnicodeString(
+    IN OUT  PNDIS_STRING        DestinationString,
+    IN      PANSI_STRING   SourceString);
 
 /*
  * BOOLEAN NdisEqualString(
 
 /*
  * BOOLEAN NdisEqualString(
@@ -2371,39 +2269,45 @@ NdisUnicodeStringToAnsiString(
  *     IN  PNDIS_STRING    String2,
  *     IN  BOOLEAN         CaseInsensitive)
  */
  *     IN  PNDIS_STRING    String2,
  *     IN  BOOLEAN         CaseInsensitive)
  */
-#define NdisEqualString(String1,            \
-                        String2,            \
-                        CaseInsensitive)    \
-    RtlEqualUnicodeString((String1), (String2), (CaseInsensitive))
+BOOLEAN
+EXPIMP
+NdisEqualString(
+    IN  PNDIS_STRING    String1,
+    IN  PNDIS_STRING    String2,
+    IN  BOOLEAN         CaseInsensitive);
 
 /*
  * VOID NdisInitAnsiString(
  *     IN OUT  PNDIS_ANSI_STRING   DestinationString,
  *     IN      PCSTR               SourceString)
  */
 
 /*
  * VOID NdisInitAnsiString(
  *     IN OUT  PNDIS_ANSI_STRING   DestinationString,
  *     IN      PCSTR               SourceString)
  */
-#define        NdisInitAnsiString(DestinationString,   \
-                           SourceString)        \
-    RtlInitString((DestinationString), (SourceString))
+VOID
+EXPIMP
+NdisInitAnsiString(
+    IN OUT  PANSI_STRING   DestinationString,
+    IN      PCSTR               SourceString);
 
 /*
  * VOID NdisInitUnicodeString(
  *     IN OUT  PNDIS_STRING    DestinationString,
  *     IN      PCWSTR          SourceString)
  */
 
 /*
  * VOID NdisInitUnicodeString(
  *     IN OUT  PNDIS_STRING    DestinationString,
  *     IN      PCWSTR          SourceString)
  */
-#define        NdisInitUnicodeString(DestinationString,    \
-                              SourceString)         \
-    RtlInitUnicodeString((DestinationString), (SourceString))
+VOID
+EXPIMP
+NdisInitUnicodeString(
+    IN OUT  PNDIS_STRING    DestinationString,
+    IN      PCWSTR          SourceString);
 
 /*
  * NDIS_STATUS NdisUnicodeStringToAnsiString(
  *     IN OUT  PNDIS_ANSI_STRING   DestinationString,
  *     IN      PNDIS_STRING        SourceString)
  */
 
 /*
  * NDIS_STATUS NdisUnicodeStringToAnsiString(
  *     IN OUT  PNDIS_ANSI_STRING   DestinationString,
  *     IN      PNDIS_STRING        SourceString)
  */
-#define        NdisUnicodeStringToAnsiString(DestinationString,    \
-                                      SourceString)         \
-    RtlUnicodeStringToAnsiString((DestinationString), (SourceString), FALSE)
-
-#endif /* BINARY_COMPATIBLE */
+NDIS_STATUS
+EXPIMP
+NdisUnicodeStringToAnsiString(
+    IN OUT  PANSI_STRING   DestinationString,
+    IN      PNDIS_STRING        SourceString);
 
 #define NdisFreeString(_s)  NdisFreeMemory((s).Buffer, (s).MaximumLength, 0)
 #define NdisPrintString(_s) DbgPrint("%ls", (s).Buffer)
 
 #define NdisFreeString(_s)  NdisFreeMemory((s).Buffer, (s).MaximumLength, 0)
 #define NdisPrintString(_s) DbgPrint("%ls", (s).Buffer)
@@ -2833,14 +2737,10 @@ NdisDprReleaseSpinLock(
 VOID
 EXPIMP
 NdisGetCurrentSystemTime(
 VOID
 EXPIMP
 NdisGetCurrentSystemTime(
-       PLONGLONG                               pSystemTime
+       PLARGE_INTEGER                          pSystemTime
        );
 
 
        );
 
 
-/* NDIS 5.0 extensions */
-
-#ifdef NDIS50
-
 VOID
 EXPIMP
 NdisAcquireReadWriteLock(
 VOID
 EXPIMP
 NdisAcquireReadWriteLock(
@@ -3446,7 +3346,7 @@ NdisIMInitializeDeviceInstanceEx(
     IN  PNDIS_STRING    DriverInstance,
     IN  NDIS_HANDLE     DeviceContext   OPTIONAL);
 
     IN  PNDIS_STRING    DriverInstance,
     IN  NDIS_HANDLE     DeviceContext   OPTIONAL);
 
-#endif /* NDIS50 */
+//#endif /* NDIS50 */
 
 
 
 
 
 
@@ -5433,8 +5333,6 @@ NdisUpdateSharedMemory(
 
 /* Routines for NDIS protocol drivers */
 
 
 /* Routines for NDIS protocol drivers */
 
-#if BINARY_COMPATIBLE
-
 VOID
 EXPIMP
 NdisRequest(
 VOID
 EXPIMP
 NdisRequest(
@@ -5465,47 +5363,14 @@ NdisSendPackets(
 VOID
 EXPIMP
 NdisTransferData(
 VOID
 EXPIMP
 NdisTransferData(
-    OUT PNDIS_STATUS        Status,
-    IN  NDIS_HANDLE         NdisBindingHandle,
-    IN  NDIS_HANDLE         MacReceiveContext,
-    IN  UINT                ByteOffset,
-    IN  UINT                BytesToTransfer,
-    IN  OUT PNDIS_PACKET    Packet,
-    OUT PUINT               BytesTransferred);
-
-#else /* BINARY_COMPATIBLE */
-
-#define NdisRequest(Status,            \
-                    NdisBindingHandle, \
-                    NdisRequest)       \
-{                                      \
-    *(Status) = (((PNDIS_OPEN_BLOCK)(NdisBindingHandle))->RequestHandler)(         \
-        ((PNDIS_OPEN_BLOCK)(NdisBindingHandle))->MacBindingHandle, (NdisRequest)); \
-}
-
-#define NdisReset(Status,            \
-                  NdisBindingHandle) \
-{                                    \
-    *(Status) = (((PNDIS_OPEN_BLOCK)(NdisBindingHandle))->ResetHandler)( \
-        ((PNDIS_OPEN_BLOCK)(NdisBindingHandle))->MacBindingHandle);      \
-}
-
-#define NdisSend(Status,            \
-                 NdisBindingHandle, \
-                 Packet)            \
-{                                   \
-    *(Status) = (((PNDIS_OPEN_BLOCK)(NdisBindingHandle))->u1.SendHandler)(    \
-        ((PNDIS_OPEN_BLOCK)(NdisBindingHandle))->MacBindingHandle, (Packet)); \
-}
-
-#define NdisSendPackets(NdisBindingHandle, \
-                        PacketArray,       \
-                        NumberOfPackets)   \
-{                                          \
-    (((PNDIS_OPEN_BLOCK)(NdisBindingHandle))->SendPacketsHandler)( \
-        (PNDIS_OPEN_BLOCK)(NdisBindingHandle), (PacketArray), (NumberOfPackets)); \
-}
-
+    OUT     PNDIS_STATUS    Status,
+    IN      NDIS_HANDLE     NdisBindingHandle,
+    IN      NDIS_HANDLE     MacReceiveContext,
+    IN      UINT            ByteOffset,
+    IN      UINT            BytesToTransfer,
+    IN OUT     PNDIS_PACKET    Packet,
+    OUT     PUINT           BytesTransferred);
+/*
 #define NdisTransferData(Status,           \
                         NdisBindingHandle, \
                         MacReceiveContext, \
 #define NdisTransferData(Status,           \
                         NdisBindingHandle, \
                         MacReceiveContext, \
@@ -5522,8 +5387,7 @@ NdisTransferData(
         (Packet),            \
         (BytesTransferred)); \
 }
         (Packet),            \
         (BytesTransferred)); \
 }
-
-#endif /* BINARY_COMPATIBLE */
+*/
 
 
 VOID
 
 
 VOID
@@ -5605,3 +5469,127 @@ NdisReturnPackets(
 #endif /* __NDIS_H */
 
 /* EOF */
 #endif /* __NDIS_H */
 
 /* EOF */
+
+/*
+ * XXX - these macros are disabled for the momentdue to the fact that there are definitions for them elsewhere.
+ * We will have to decide which to keep; we don't need both (no BINARY_COMPATIBLE)
+ */
+#if 0
+#define NdisAdjustBufferLength(Buffer,  \
+                               Length)  \
+{                                       \
+    (Buffer)->ByteCount = (Length);     \
+}
+
+#define NDIS_BUFFER_TO_SPAN_PAGES(Buffer)   \
+(                                           \
+    MmGetMdlByteCount(Buffer) == 0 ?        \
+        1 :                                 \
+        ADDRESS_AND_SIZE_TO_SPAN_PAGES(     \
+            MmGetMdlVirtualAddress(Buffer), \
+            MmGetMdlByteCount(Buffer))      \
+)
+
+#define NdisFreeBuffer(Buffer)  \
+{                               \
+    IoFreeMdl(Buffer) /* ??? */ \
+}
+
+#define NdisGetBufferPhysicalArraySize(Buffer,      \
+                                       ArraySize)   \
+{                                                   \
+}
+
+#define        NdisGetFirstBufferFromPacket(Packet,                \
+                                     FirstBuffer,           \
+                                     FirstBufferVA,         \
+                                     FirstBufferLength,     \
+                                     TotalBufferLength)     \
+{                                                           \
+    PNDIS_BUFFER _Buffer;                                   \
+                                                            \
+    _Buffer              = (Packet)->Private.Head;          \
+    *(FirstBuffer)       = _Buffer;                         \
+    *(FirstBufferVA)     = MmGetMdlVirtualAddress(_Buffer); \
+    if (_Buffer != NULL) {                                  \
+        *(FirstBufferLength) = MmGetMdlByteCount(_Buffer);  \
+        _Buffer = _Buffer->Next;                            \
+    } else                                                  \
+        *(FirstBufferLength) = 0;                           \
+    *(TotalBufferLength) = *(FirstBufferLength);            \
+    while (_Buffer != NULL) {                               \
+        *(TotalBufferLength) += MmGetMdlByteCount(_Buffer); \
+        _Buffer = _Buffer->Next;                            \
+    }                                                       \
+}
+
+#define NdisQueryBuffer(Buffer,                                       \
+                        VirtualAddress,                               \
+                        Length)                                       \
+{                                                                     \
+       if (VirtualAddress)                                               \
+               *((PVOID*)VirtualAddress) = MmGetSystemAddressForMdl(Buffer); \
+                                                                      \
+       *((PUINT)Length) = MmGetMdlByteCount(Buffer);                     \
+}
+
+#define NdisQueryBufferOffset(Buffer,               \
+                              Offset,               \
+                              Length)               \
+{                                                   \
+    *((PUINT)Offset) = MmGetMdlByteOffset(Buffer);  \
+    *((PUINT)Length) = MmGetMdlByteCount(Buffer);   \
+}
+
+#define        NdisAnsiStringToUnicodeString(DestinationString,    \
+                                      SourceString)         \
+    RtlAnsiStringToUnicodeString((DestinationString), (SourceString), FALSE)
+
+#define NdisEqualString(String1,            \
+                        String2,            \
+                        CaseInsensitive)    \
+    RtlEqualUnicodeString((String1), (String2), (CaseInsensitive))
+
+#define        NdisInitAnsiString(DestinationString,   \
+                           SourceString)        \
+    RtlInitString((DestinationString), (SourceString))
+
+#define        NdisInitUnicodeString(DestinationString,    \
+                              SourceString)         \
+    RtlInitUnicodeString((DestinationString), (SourceString))
+
+#define        NdisUnicodeStringToAnsiString(DestinationString,    \
+                                      SourceString)         \
+    RtlUnicodeStringToAnsiString((DestinationString), (SourceString), FALSE)
+
+#define NdisRequest(Status,            \
+                    NdisBindingHandle, \
+                    NdisRequest)       \
+{                                      \
+    *(Status) = (((PNDIS_OPEN_BLOCK)(NdisBindingHandle))->RequestHandler)(         \
+        ((PNDIS_OPEN_BLOCK)(NdisBindingHandle))->MacBindingHandle, (NdisRequest)); \
+}
+
+#define NdisReset(Status,            \
+                  NdisBindingHandle) \
+{                                    \
+    *(Status) = (((PNDIS_OPEN_BLOCK)(NdisBindingHandle))->ResetHandler)( \
+        ((PNDIS_OPEN_BLOCK)(NdisBindingHandle))->MacBindingHandle);      \
+}
+
+#define NdisSend(Status,            \
+                 NdisBindingHandle, \
+                 Packet)            \
+{                                   \
+    *(Status) = (((PNDIS_OPEN_BLOCK)(NdisBindingHandle))->u1.SendHandler)(    \
+        ((PNDIS_OPEN_BLOCK)(NdisBindingHandle))->MacBindingHandle, (Packet)); \
+}
+
+#define NdisSendPackets(NdisBindingHandle, \
+                        PacketArray,       \
+                        NumberOfPackets)   \
+{                                          \
+    (((PNDIS_OPEN_BLOCK)(NdisBindingHandle))->SendPacketsHandler)( \
+        (PNDIS_OPEN_BLOCK)(NdisBindingHandle), (PacketArray), (NumberOfPackets)); \
+}
+#endif
index 121475c..6166b25 100644 (file)
@@ -407,4 +407,14 @@ typedef struct _NET_PNP_TRANSLATE_LIST
 
 #endif /* __NDISOID_H */
 
 
 #endif /* __NDISOID_H */
 
+/* PNP OIDs */
+#define OID_PNP_CAPABILITIES                     0xFD010100
+#define OID_PNP_SET_POWER                        0xFD010101
+#define OID_PNP_QUERY_POWER                      0xFD010102
+#define OID_PNP_ADD_WAKE_UP_PATTERN              0xFD010103
+#define OID_PNP_REMOVE_WAKE_UP_PATTERN           0xFD010104
+#define OID_PNP_WAKE_UP_PATTERN_LIST             0xFD010105
+#define OID_PNP_ENABLE_WAKE_UP                   0xFD010106
+
+
 /* EOF */
 /* EOF */
index 13a623f..4579167 100644 (file)
@@ -28,6 +28,7 @@ extern DWORD DebugTraceLevel;
                DbgPrint _x_; \
     }
 
                DbgPrint _x_; \
     }
 
+#if 0
 #ifdef ASSERT
 #undef ASSERT
 #endif
 #ifdef ASSERT
 #undef ASSERT
 #endif
@@ -38,11 +39,13 @@ extern DWORD DebugTraceLevel;
 #define ASSERT(x) if (!(x)) { WSH_DbgPrint(MIN_TRACE, ("Assertion "#x" failed at %s:%d\n", __FILE__, __LINE__)); ExitProcess(0); }
 #endif /* NASSERT */
 
 #define ASSERT(x) if (!(x)) { WSH_DbgPrint(MIN_TRACE, ("Assertion "#x" failed at %s:%d\n", __FILE__, __LINE__)); ExitProcess(0); }
 #endif /* NASSERT */
 
+#endif
+
 #else /* DBG */
 
 #define WSH_DbgPrint(_t_, _x_)
 
 #else /* DBG */
 
 #define WSH_DbgPrint(_t_, _x_)
 
-#define ASSERT(x)
+/*#define ASSERT(x)*/
 
 #endif /* DBG */
 
 
 #endif /* DBG */
 
index c0c5674..d431ada 100755 (executable)
@@ -16,7 +16,7 @@
  *  along with this program; if not, write to the Free Software
  *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  */
  *  along with this program; if not, write to the Free Software
  *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  */
-/* $Id: profile.c,v 1.4 2003/07/21 21:53:51 royce Exp $
+/* $Id: profile.c,v 1.5 2003/07/24 18:14:59 royce Exp $
  *
  * PROJECT:         ReactOS kernel
  * FILE:            ntoskrnl/dbg/profile.c
  *
  * PROJECT:         ReactOS kernel
  * FILE:            ntoskrnl/dbg/profile.c
@@ -364,7 +364,7 @@ KdbProfilerAnalyzeSamples()
   return STATUS_SUCCESS;
 }
 
   return STATUS_SUCCESS;
 }
 
-NTSTATUS STDCALL
+VOID STDCALL_FUNC
 KdbProfilerThreadMain(PVOID Context)
 {
   for (;;)
 KdbProfilerThreadMain(PVOID Context)
 {
   for (;;)
index 303edf0..086f88f 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: init.c,v 1.48 2003/06/09 13:45:22 ekohl Exp $
+/* $Id: init.c,v 1.49 2003/07/24 18:14:59 royce Exp $
  *
  * init.c - Session Manager initialization
  * 
  *
  * init.c - Session Manager initialization
  * 
@@ -880,6 +880,8 @@ InitSessionManager(HANDLE Children[])
       return(Status);
     }
 
       return(Status);
     }
 
+  PrintString("SM: loading well-known DLLs\n");
+
   /* Load the well known DLLs */
   Status = SmLoadKnownDlls();
   if (!NT_SUCCESS(Status))
   /* Load the well known DLLs */
   Status = SmLoadKnownDlls();
   if (!NT_SUCCESS(Status))
@@ -888,6 +890,8 @@ InitSessionManager(HANDLE Children[])
       /* Don't crash ReactOS if DLLs cannot be loaded */
     }
 
       /* Don't crash ReactOS if DLLs cannot be loaded */
     }
 
+  PrintString("SM: creating system paging files\n");
+
   /* Create paging files */
   Status = SmCreatePagingFiles();
   if (!NT_SUCCESS(Status))
   /* Create paging files */
   Status = SmCreatePagingFiles();
   if (!NT_SUCCESS(Status))
@@ -896,6 +900,8 @@ InitSessionManager(HANDLE Children[])
       return(Status);
     }
 
       return(Status);
     }
 
+  PrintString("SM: initializing registry\n");
+
   /* Load remaining registry hives */
   NtInitializeRegistry(FALSE);
 
   /* Load remaining registry hives */
   NtInitializeRegistry(FALSE);
 
@@ -909,6 +915,8 @@ InitSessionManager(HANDLE Children[])
     }
 #endif
 
     }
 #endif
 
+  PrintString("SM: loading subsystems\n");
+
   /* Load the subsystems */
   Status = SmLoadSubsystems();
   if (!NT_SUCCESS(Status))
   /* Load the subsystems */
   Status = SmLoadSubsystems();
   if (!NT_SUCCESS(Status))
@@ -917,6 +925,8 @@ InitSessionManager(HANDLE Children[])
       return(Status);
     }
 
       return(Status);
     }
 
+  PrintString("SM: initializing csrss\n");
+
   /* Run csrss.exe */
   RtlInitUnicodeStringFromLiteral(&UnicodeString,
                                  L"\\CsrssInitDone");
   /* Run csrss.exe */
   RtlInitUnicodeStringFromLiteral(&UnicodeString,
                                  L"\\CsrssInitDone");
@@ -986,6 +996,8 @@ InitSessionManager(HANDLE Children[])
    * Start the logon process (winlogon.exe)
    */
 
    * Start the logon process (winlogon.exe)
    */
 
+  PrintString("SM: starting winlogon\n");
+
   /* initialize executable path */
   wcscpy(UnicodeBuffer, L"\\??\\");
   wcscat(UnicodeBuffer, SharedUserData->NtSystemRoot);
   /* initialize executable path */
   wcscpy(UnicodeBuffer, L"\\??\\");
   wcscat(UnicodeBuffer, SharedUserData->NtSystemRoot);