There's a difference between a handle and an object... Sorry about this
Modified: trunk/reactos/drivers/lib/ip/transport/tcp/tcp.c

Modified: trunk/reactos/drivers/lib/ip/transport/tcp/tcp.c
--- trunk/reactos/drivers/lib/ip/transport/tcp/tcp.c	2005-12-24 07:21:22 UTC (rev 20319)
+++ trunk/reactos/drivers/lib/ip/transport/tcp/tcp.c	2005-12-24 09:33:35 UTC (rev 20320)
@@ -419,9 +419,8 @@
 	return STATUS_SUCCESS;
 
     WaitForThread.QuadPart = -2500000; /* 250 ms */
-    KeSetEvent(&TimerLoopEvent, IO_NO_INCREMENT, TRUE);
-    KeWaitForSingleObject(&TimerThreadHandle, Executive, KernelMode,
-                          FALSE, &WaitForThread);
+    KeSetEvent(&TimerLoopEvent, IO_NO_INCREMENT, FALSE);
+    ZwWaitForSingleObject(TimerThreadHandle, FALSE, &WaitForThread);
 
     /* Deregister this protocol with IP layer */
     IPRegisterProtocol(IPPROTO_TCP, NULL);