doing my good dead for the day
[reactos.git] / reactos / lib / ntdll / dbg / debug.c
index 4d4b0b9..edf9e73 100644 (file)
 
 /* INCLUDES *****************************************************************/
 
-#include <ddk/ntddk.h>
-#include <ntdll/rtl.h>
-#include <rosrtl/string.h>
-#include <rosrtl/thread.h>
-#include <ntdll/dbg.h>
+#include <ntdll.h>
+#define NDEBUG
+#include <debug.h>
 
 /* FUNCTIONS *****************************************************************/
 
 static HANDLE DbgSsApiPort = NULL;
 static HANDLE DbgSsReplyPort = NULL;
+static NTSTATUS (STDCALL * DbgSsCallback)(PVOID,PVOID) = NULL;
 
 
 typedef struct _LPC_DBGSS_MESSAGE
 {
-       LPC_MESSAGE Header;
+       PORT_MESSAGE Header;
        ULONG Unknown1;
        ULONG Unknown2;
        ULONG Unknown3;
@@ -46,7 +45,7 @@ DbgSsServerThread(PVOID Unused)
                Status = NtReplyWaitReceivePort (DbgSsApiPort,
                                                 NULL,
                                                 NULL,
-                                                (PLPC_MESSAGE)&Message);
+                                                (PPORT_MESSAGE)&Message);
                if (!NT_SUCCESS(Status))
                {
                        DbgPrint ("DbgSs: NtReplyWaitReceivePort failed - Status == %lx\n",
@@ -79,12 +78,12 @@ DbgSsHandleKmApiMsg(ULONG Unknown1,
  */
 NTSTATUS STDCALL
 DbgSsInitialize(HANDLE ReplyPort,
-               ULONG Unknown1,
+               PVOID Callback,
                ULONG Unknown2,
                ULONG Unknown3)
 {
        SECURITY_QUALITY_OF_SERVICE Qos;
-       UNICODE_STRING PortName = ROS_STRING_INITIALIZER(L"\\DbgSsApiPort");
+       UNICODE_STRING PortName = RTL_CONSTANT_STRING(L"\\DbgSsApiPort");
        NTSTATUS Status;
 
        Qos.Length = sizeof(SECURITY_QUALITY_OF_SERVICE);
@@ -104,7 +103,7 @@ DbgSsInitialize(HANDLE ReplyPort,
                return Status;
 
        DbgSsReplyPort = ReplyPort;
-//     UnknownData1 = Unknown1;
+       DbgSsCallback = Callback;
 //     UnknownData2 = Unknown2;
 //     UnknownData3 = Unknown3;
 
@@ -112,8 +111,8 @@ DbgSsInitialize(HANDLE ReplyPort,
                                      NULL,
                                      FALSE,
                                      0,
-                                     NULL,
-                                     NULL,
+                                     0,
+                                     0,
                                      (PTHREAD_START_ROUTINE)DbgSsServerThread,
                                      NULL,
                                      NULL,
@@ -130,7 +129,7 @@ NTSTATUS STDCALL
 DbgUiConnectToDbg(VOID)
 {
        SECURITY_QUALITY_OF_SERVICE Qos;
-       UNICODE_STRING PortName = ROS_STRING_INITIALIZER(L"\\DbgUiApiPort");
+       UNICODE_STRING PortName = RTL_CONSTANT_STRING(L"\\DbgUiApiPort");
        NTSTATUS Status;
        PTEB Teb;
        ULONG InfoSize;
@@ -179,20 +178,17 @@ DbgUiContinue(PCLIENT_ID ClientId,
  * @unimplemented
  */
 NTSTATUS STDCALL
-DbgUiWaitStateChange(ULONG Unknown1,
-                    ULONG Unknown2)
+DbgUiWaitStateChange(PDBGUI_WAIT_STATE_CHANGE DbgUiWaitStateCange,
+                     PLARGE_INTEGER TimeOut)
 {
   return STATUS_NOT_IMPLEMENTED;
 }
 
-NTSTATUS STDCALL DbgUiRemoteBreakin(VOID)
+VOID STDCALL DbgUiRemoteBreakin(VOID)
 {
  DbgBreakPoint();
 
- RtlRosExitUserThread(0);
-
- DbgBreakPoint();
- return STATUS_SUCCESS;
+ RtlExitUserThread(STATUS_SUCCESS);
 }
 
 NTSTATUS STDCALL DbgUiIssueRemoteBreakin(HANDLE Process)
@@ -208,8 +204,8 @@ NTSTATUS STDCALL DbgUiIssueRemoteBreakin(HANDLE Process)
   NULL,
   FALSE,
   0,
-  &nStackSize,
-  &nStackSize,
+  nStackSize,
+  nStackSize,
   (PTHREAD_START_ROUTINE)DbgUiRemoteBreakin,
   NULL,
   &hThread,