-/*
- * PROJECT: ReactOS Native Headers
- * FILE: include/ndk/umfuncs.h
- * PURPOSE: Prototypes for NT Library Functions
- * PROGRAMMER: Alex Ionescu (alex@relsoft.net)
- */
+/*++ NDK Version: 0098
+
+Copyright (c) Alex Ionescu. All rights reserved.
+
+Header Name:
+
+ umfuncs.h
+
+Abstract:
+
+ Function definitions for Native DLL (ntdll) APIs exclusive to User Mode.
+
+Author:
+
+ Alex Ionescu (alexi@tinykrnl.org) - Updated - 27-Feb-2006
+
+--*/
+
#ifndef _UMFUNCS_H
#define _UMFUNCS_H
-/* DEPENDENCIES **************************************************************/
+//
+// Dependencies
+//
+#include <umtypes.h>
+#include <dbgktypes.h>
+
+//
+// Don't force inclusion of csrss header, leave this opaque.
+//
struct _CSR_API_MESSAGE;
struct _CSR_CAPTURE_BUFFER;
-/* PROTOTYPES ****************************************************************/
-
-/*
- * CSR Functions
- */
+//
+// CSR Functions
+//
PVOID
NTAPI
CsrAllocateCaptureBuffer(
NTAPI
CsrAllocateMessagePointer(
struct _CSR_CAPTURE_BUFFER *CaptureBuffer,
- ULONG MessageLength,
- PVOID *CaptureData
+ ULONG MessageLength,
+ PVOID *CaptureData
);
VOID
NTAPI
CsrCaptureMessageBuffer(
struct _CSR_CAPTURE_BUFFER *CaptureBuffer,
- PVOID MessageString,
- ULONG StringLength,
- PVOID *CapturedData
+ PVOID MessageString,
+ ULONG StringLength,
+ PVOID *CapturedData
);
NTSTATUS
NTSTATUS
NTAPI
-CsrIdentifyAlertableThread(VOID);
+CsrIdentifyAlertableThread(
+ VOID
+);
VOID
NTAPI
-CsrFreeCaptureBuffer(struct _CSR_CAPTURE_BUFFER *CaptureBuffer);
+CsrFreeCaptureBuffer(
+ struct _CSR_CAPTURE_BUFFER *CaptureBuffer
+);
NTSTATUS
NTAPI
IN ULONG Alignment
);
-/*
- * Debug Functions
- */
-ULONG
-__cdecl
-DbgPrint(
- IN PCH Format,
- IN ...
-);
-
-VOID
-NTAPI
-DbgBreakPoint(VOID);
-
+//
+// Debug Functions
+//
NTSYSAPI
VOID
NTAPI
-DbgBreakPointWithStatus(IN ULONG Status);
+DbgBreakPointWithStatus(
+ IN ULONG Status
+);
NTSTATUS
NTAPI
-DbgUiConnectToDbg(VOID);
+DbgUiConnectToDbg(
+ VOID
+);
NTSTATUS
NTAPI
DbgUiContinue(
- PCLIENT_ID ClientId,
- ULONG ContinueStatus
+ IN PCLIENT_ID ClientId,
+ IN ULONG ContinueStatus
);
NTSTATUS
NTAPI
DbgUiWaitStateChange(
- PDBGUI_WAIT_STATE_CHANGE DbgUiWaitStateCange,
- PLARGE_INTEGER TimeOut
+ IN PDBGUI_WAIT_STATE_CHANGE DbgUiWaitStateCange,
+ IN PLARGE_INTEGER TimeOut
);
VOID
NTAPI
-DbgUiRemoteBreakin(VOID);
+DbgUiRemoteBreakin(
+ VOID
+);
NTSTATUS
NTAPI
-DbgUiIssueRemoteBreakin(HANDLE Process);
+DbgUiIssueRemoteBreakin(
+ IN HANDLE Process
+);
+
+//
+// Loader Functions
+//
+
+NTSTATUS
+NTAPI
+LdrAddRefDll(
+ IN ULONG Flags,
+ IN PVOID BaseAddress
+);
-/*
- * Loader Functions
- */
NTSTATUS
NTAPI
-LdrDisableThreadCalloutsForDll(IN PVOID BaseAddress);
+LdrDisableThreadCalloutsForDll(
+ IN PVOID BaseAddress
+);
NTSTATUS
NTAPI
NTAPI
LdrLoadDll(
IN PWSTR SearchPath OPTIONAL,
- IN ULONG LoadFlags,
+ IN PULONG LoadFlags OPTIONAL,
IN PUNICODE_STRING Name,
OUT PVOID *BaseAddress OPTIONAL
);
+PVOID
+NTAPI
+RtlPcToFileHeader(
+ IN PVOID PcValue,
+ PVOID* BaseOfImage
+);
+
PIMAGE_BASE_RELOCATION
NTAPI
LdrProcessRelocationBlock(
- IN PVOID Address,
- IN USHORT Count,
+ IN ULONG_PTR Address,
+ IN ULONG Count,
IN PUSHORT TypeOffset,
- IN ULONG_PTR Delta
+ IN LONG_PTR Delta
);
NTSTATUS
NTSTATUS
NTAPI
-LdrShutdownProcess(VOID);
+LdrShutdownProcess(
+ VOID
+);
NTSTATUS
NTAPI
-LdrShutdownThread(VOID);
+LdrShutdownThread(
+ VOID
+);
NTSTATUS
NTAPI
-LdrUnloadDll(IN PVOID BaseAddress);
+LdrUnloadDll(
+ IN PVOID BaseAddress
+);
NTSTATUS
NTAPI
);
#endif
-/* EOF */