mirror of
https://github.com/reactos/reactos.git
synced 2025-02-23 00:45:24 +00:00
Add new header for native user-mode functios inside the NT library inside the NDK, it will end up replacing most of the exported parts of the ntdll headers. It's not used yet as it would conflict, I added a temporary guard for that. Also added many more types to rtlfuncs.h so that it's almost entirely complete, and took out non rtl-stuff and put it into the user-mode NT header
svn path=/trunk/; revision=16199
This commit is contained in:
parent
1d7902f557
commit
3b2016d0ac
8 changed files with 595 additions and 29 deletions
|
@ -19,6 +19,15 @@
|
|||
#define RESOURCE_LANGUAGE_LEVEL 2
|
||||
#define RESOURCE_DATA_LEVEL 3
|
||||
|
||||
/* FIXME: USE CORRRECT LDR_ FLAGS */
|
||||
#define IMAGE_DLL 0x00000004
|
||||
#define LOAD_IN_PROGRESS 0x00001000
|
||||
#define UNLOAD_IN_PROGRESS 0x00002000
|
||||
#define ENTRY_PROCESSED 0x00004000
|
||||
#define DONT_CALL_FOR_THREAD 0x00040000
|
||||
#define PROCESS_ATTACH_CALLED 0x00080000
|
||||
#define IMAGE_NOT_AT_BASE 0x00200000
|
||||
|
||||
/* ENUMERATIONS **************************************************************/
|
||||
|
||||
/* TYPES *********************************************************************/
|
||||
|
@ -34,8 +43,26 @@ typedef struct _PEB_LDR_DATA
|
|||
PVOID EntryInProgress;
|
||||
} PEB_LDR_DATA, *PPEB_LDR_DATA;
|
||||
|
||||
/* FIXME: Update with _LDR_DATA_TABLE_ENTRY and LDR_ flags */
|
||||
//typedef struct _LDR_MODULE
|
||||
typedef struct _LDR_DATA_TABLE_ENTRY
|
||||
{
|
||||
LIST_ENTRY InLoadOrderModuleList;
|
||||
LIST_ENTRY InMemoryOrderModuleList;
|
||||
LIST_ENTRY InInitializationOrderModuleList;
|
||||
PVOID DllBase;
|
||||
PVOID EntryPoint;
|
||||
ULONG SizeOfImage;
|
||||
UNICODE_STRING FullDllName;
|
||||
UNICODE_STRING BaseDllName;
|
||||
ULONG Flags;
|
||||
SHORT LoadCount; /* FIXME: HACK!!! FIX ASAP */
|
||||
SHORT TlsIndex; /* FIXME: HACK!!! FIX ASAP */
|
||||
LIST_ENTRY HashLinks;
|
||||
PVOID SectionPointer;
|
||||
ULONG CheckSum;
|
||||
ULONG TimeDateStamp;
|
||||
PVOID LoadedImports;
|
||||
PVOID EntryPointActivationContext;
|
||||
} LDR_DATA_TABLE_ENTRY, *PLDR_DATA_TABLE_ENTRY;
|
||||
|
||||
typedef struct _LDR_RESOURCE_INFO
|
||||
{
|
||||
|
|
|
@ -34,6 +34,9 @@
|
|||
#else
|
||||
/* User-Mode NDK */
|
||||
#include "umtypes.h" /* Native Types in DDK/IFS but not in PSDK */
|
||||
#ifdef READY_FOR_NEW_NTDLL /* This hack will be removed in the next commit */
|
||||
#include "umfuncs.h" /* User-Mode NT Library Functions */
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* Shared NDK */
|
||||
|
|
|
@ -204,19 +204,14 @@ RemoveTailList(
|
|||
}
|
||||
|
||||
/*
|
||||
* Debug Functions
|
||||
* Error and Exception Functions
|
||||
*/
|
||||
|
||||
ULONG
|
||||
CDECL
|
||||
DbgPrint(
|
||||
IN PCH Format,
|
||||
IN ...
|
||||
);
|
||||
|
||||
VOID
|
||||
PVOID
|
||||
STDCALL
|
||||
DbgBreakPoint(VOID);
|
||||
RtlAddVectoredExceptionHandler(
|
||||
IN ULONG FirstHandler,
|
||||
IN PRTL_VECTORED_EXCEPTION_HANDLER VectoredHandler
|
||||
);
|
||||
|
||||
VOID
|
||||
STDCALL
|
||||
|
@ -227,6 +222,14 @@ RtlAssert(
|
|||
PCHAR Message
|
||||
);
|
||||
|
||||
PVOID
|
||||
STDCALL
|
||||
RtlEncodePointer(IN PVOID Pointer);
|
||||
|
||||
PVOID
|
||||
STDCALL
|
||||
RtlDecodePointer(IN PVOID Pointer);
|
||||
|
||||
ULONG
|
||||
STDCALL
|
||||
RtlNtStatusToDosError(IN NTSTATUS Status);
|
||||
|
@ -271,6 +274,13 @@ RtlCreateHeap(
|
|||
IN PRTL_HEAP_DEFINITION Definition OPTIONAL
|
||||
);
|
||||
|
||||
DWORD
|
||||
STDCALL
|
||||
RtlCompactHeap(
|
||||
HANDLE heap,
|
||||
DWORD flags
|
||||
);
|
||||
|
||||
HANDLE
|
||||
STDCALL
|
||||
RtlDestroyHeap(HANDLE hheap);
|
||||
|
@ -283,6 +293,13 @@ RtlFreeHeap(
|
|||
IN PVOID P
|
||||
);
|
||||
|
||||
ULONG
|
||||
STDCALL
|
||||
RtlGetProcessHeaps(
|
||||
ULONG HeapCount,
|
||||
HANDLE *HeapArray
|
||||
);
|
||||
|
||||
PVOID
|
||||
STDCALL
|
||||
RtlReAllocateHeap(
|
||||
|
@ -1138,7 +1155,9 @@ RtlFillMemoryUlong(
|
|||
|
||||
/*
|
||||
* Process Management Functions
|
||||
*/
|
||||
*/
|
||||
/* FIXME: Some of these will be split up into enviro/path functions */
|
||||
|
||||
VOID
|
||||
STDCALL
|
||||
RtlAcquirePebLock(VOID);
|
||||
|
@ -1224,6 +1243,41 @@ RtlExpandEnvironmentStrings_U(
|
|||
PULONG Length
|
||||
);
|
||||
|
||||
BOOLEAN
|
||||
STDCALL
|
||||
RtlDoesFileExists_U(PWSTR FileName);
|
||||
|
||||
ULONG
|
||||
STDCALL
|
||||
RtlDetermineDosPathNameType_U(PCWSTR Path);
|
||||
|
||||
ULONG
|
||||
STDCALL
|
||||
RtlDosSearchPath_U(
|
||||
WCHAR *sp,
|
||||
WCHAR *name,
|
||||
WCHAR *ext,
|
||||
ULONG buf_sz,
|
||||
WCHAR *buffer,
|
||||
WCHAR **shortname
|
||||
);
|
||||
|
||||
ULONG
|
||||
STDCALL
|
||||
RtlGetCurrentDirectory_U(
|
||||
ULONG MaximumLength,
|
||||
PWSTR Buffer
|
||||
);
|
||||
|
||||
ULONG
|
||||
STDCALL
|
||||
RtlGetFullPathName_U(
|
||||
const WCHAR *dosname,
|
||||
ULONG size,
|
||||
WCHAR *buf,
|
||||
WCHAR **shortname
|
||||
);
|
||||
|
||||
PRTL_USER_PROCESS_PARAMETERS
|
||||
STDCALL
|
||||
RtlNormalizeProcessParams(
|
||||
|
@ -1238,6 +1292,10 @@ RtlQueryEnvironmentVariable_U(
|
|||
PUNICODE_STRING Value
|
||||
);
|
||||
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
RtlSetCurrentDirectory_U(PUNICODE_STRING name);
|
||||
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
RtlSetEnvironmentVariable(
|
||||
|
@ -1267,6 +1325,13 @@ RtlInitializeCriticalSection(
|
|||
PRTL_CRITICAL_SECTION CriticalSection
|
||||
);
|
||||
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
RtlInitializeCriticalSectionAndSpinCount(
|
||||
PRTL_CRITICAL_SECTION CriticalSection,
|
||||
ULONG SpinCount
|
||||
);
|
||||
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
RtlLeaveCriticalSection(
|
||||
|
@ -1308,6 +1373,28 @@ RtlGetCompressionWorkSpaceSize(
|
|||
OUT PULONG CompressFragmentWorkSpaceSize
|
||||
);
|
||||
|
||||
/*
|
||||
* Debug Info Functions
|
||||
*/
|
||||
PDEBUG_BUFFER
|
||||
STDCALL
|
||||
RtlCreateQueryDebugBuffer(
|
||||
IN ULONG Size,
|
||||
IN BOOLEAN EventPair
|
||||
);
|
||||
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
RtlDestroyQueryDebugBuffer(IN PDEBUG_BUFFER DebugBuffer);
|
||||
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
RtlQueryProcessDebugInformation(
|
||||
IN ULONG ProcessId,
|
||||
IN ULONG DebugInfoClassMask,
|
||||
IN OUT PDEBUG_BUFFER DebugBuffer
|
||||
);
|
||||
|
||||
/*
|
||||
* Bitmap Functions
|
||||
*/
|
||||
|
@ -1368,17 +1455,113 @@ RtlSetBits (
|
|||
);
|
||||
|
||||
/*
|
||||
* PE Functions
|
||||
* Timer Functions
|
||||
*/
|
||||
NTSTATUS
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
LdrVerifyImageMatchesChecksum(
|
||||
IN HANDLE FileHandle,
|
||||
ULONG Unknown1,
|
||||
ULONG Unknown2,
|
||||
ULONG Unknown3
|
||||
RtlCreateTimer(
|
||||
HANDLE TimerQueue,
|
||||
PHANDLE phNewTimer,
|
||||
WAITORTIMERCALLBACKFUNC Callback,
|
||||
PVOID Parameter,
|
||||
DWORD DueTime,
|
||||
DWORD Period,
|
||||
ULONG Flags
|
||||
);
|
||||
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
RtlCreateTimerQueue(PHANDLE TimerQueue);
|
||||
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
RtlDeleteTimer(
|
||||
HANDLE TimerQueue,
|
||||
HANDLE Timer,
|
||||
HANDLE CompletionEvent
|
||||
);
|
||||
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
RtlUpdateTimer(
|
||||
HANDLE TimerQueue,
|
||||
HANDLE Timer,
|
||||
ULONG DueTime,
|
||||
ULONG Period
|
||||
);
|
||||
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
RtlDeleteTimerQueueEx(
|
||||
HANDLE TimerQueue,
|
||||
HANDLE CompletionEvent
|
||||
);
|
||||
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
RtlDeleteTimerQueue(HANDLE TimerQueue);
|
||||
|
||||
/*
|
||||
* Debug Functions
|
||||
*/
|
||||
ULONG
|
||||
CDECL
|
||||
DbgPrint(
|
||||
IN PCH Format,
|
||||
IN ...
|
||||
);
|
||||
|
||||
VOID
|
||||
STDCALL
|
||||
DbgBreakPoint(VOID);
|
||||
|
||||
/*
|
||||
* Handle Table Functions
|
||||
*/
|
||||
PRTL_HANDLE
|
||||
STDCALL
|
||||
RtlAllocateHandle (
|
||||
IN PRTL_HANDLE_TABLE HandleTable,
|
||||
IN OUT PULONG Index
|
||||
);
|
||||
|
||||
VOID
|
||||
STDCALL
|
||||
RtlDestroyHandleTable (IN PRTL_HANDLE_TABLE HandleTable);
|
||||
|
||||
BOOLEAN
|
||||
STDCALL
|
||||
RtlFreeHandle (
|
||||
IN PRTL_HANDLE_TABLE HandleTable,
|
||||
IN PRTL_HANDLE Handle
|
||||
);
|
||||
|
||||
VOID
|
||||
STDCALL
|
||||
RtlInitializeHandleTable (
|
||||
IN ULONG TableSize,
|
||||
IN ULONG HandleSize,
|
||||
IN PRTL_HANDLE_TABLE HandleTable
|
||||
);
|
||||
|
||||
BOOLEAN
|
||||
STDCALL
|
||||
RtlIsValidHandle (
|
||||
IN PRTL_HANDLE_TABLE HandleTable,
|
||||
IN PRTL_HANDLE Handle
|
||||
);
|
||||
|
||||
BOOLEAN
|
||||
STDCALL
|
||||
RtlIsValidIndexHandle (
|
||||
IN PRTL_HANDLE_TABLE HandleTable,
|
||||
IN OUT PRTL_HANDLE *Handle,
|
||||
IN ULONG Index
|
||||
);
|
||||
|
||||
/*
|
||||
* PE Functions
|
||||
*/
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
RtlFindMessage(
|
||||
|
@ -1388,6 +1571,10 @@ RtlFindMessage(
|
|||
IN ULONG MessageId,
|
||||
OUT PRTL_MESSAGE_RESOURCE_ENTRY *MessageResourceEntry
|
||||
);
|
||||
|
||||
ULONG
|
||||
STDCALL
|
||||
RtlGetNtGlobalFlags(VOID);
|
||||
|
||||
PVOID
|
||||
STDCALL
|
||||
|
|
|
@ -43,6 +43,13 @@
|
|||
#define RTL_RANGE_SHARED 0x01
|
||||
#define RTL_RANGE_CONFLICT 0x02
|
||||
|
||||
/* FIXME: Rename these */
|
||||
#define PDI_MODULES 0x01 /* The loaded modules of the process */
|
||||
#define PDI_BACKTRACE 0x02 /* The heap stack back traces */
|
||||
#define PDI_HEAPS 0x04 /* The heaps of the process */
|
||||
#define PDI_HEAP_TAGS 0x08 /* The heap tags */
|
||||
#define PDI_HEAP_BLOCKS 0x10 /* The heap blocks */
|
||||
#define PDI_LOCKS 0x20 /* The locks created by the process */
|
||||
/* ENUMERATIONS **************************************************************/
|
||||
|
||||
typedef enum
|
||||
|
@ -53,6 +60,18 @@ typedef enum
|
|||
ExceptionCollidedUnwind
|
||||
} EXCEPTION_DISPOSITION;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
INVALID_PATH = 0,
|
||||
UNC_PATH, /* "//foo" */
|
||||
ABSOLUTE_DRIVE_PATH, /* "c:/foo" */
|
||||
RELATIVE_DRIVE_PATH, /* "c:foo" */
|
||||
ABSOLUTE_PATH, /* "/foo" */
|
||||
RELATIVE_PATH, /* "foo" */
|
||||
DEVICE_PATH, /* "//./foo" */
|
||||
UNC_DOT_PATH /* "//." */
|
||||
} DOS_PATHNAME_TYPE;
|
||||
|
||||
/* FUNCTION TYPES ************************************************************/
|
||||
typedef NTSTATUS
|
||||
(*PHEAP_ENUMERATION_ROUTINE)(
|
||||
|
@ -68,6 +87,10 @@ typedef EXCEPTION_DISPOSITION
|
|||
PVOID
|
||||
);
|
||||
|
||||
typedef LONG (STDCALL *PRTL_VECTORED_EXCEPTION_HANDLER)(
|
||||
PEXCEPTION_POINTERS ExceptionPointers
|
||||
);
|
||||
|
||||
typedef DWORD (STDCALL *PTHREAD_START_ROUTINE)(
|
||||
LPVOID Parameter
|
||||
);
|
||||
|
@ -91,6 +114,98 @@ typedef struct _ACE
|
|||
ACCESS_MASK AccessMask;
|
||||
} ACE, *PACE;
|
||||
|
||||
/* FIXME: Review definitions and give these guys a better name */
|
||||
typedef struct _DEBUG_BUFFER
|
||||
{
|
||||
HANDLE SectionHandle;
|
||||
PVOID SectionBase;
|
||||
PVOID RemoteSectionBase;
|
||||
ULONG SectionBaseDelta;
|
||||
HANDLE EventPairHandle;
|
||||
ULONG Unknown[2];
|
||||
HANDLE RemoteThreadHandle;
|
||||
ULONG InfoClassMask;
|
||||
ULONG SizeOfInfo;
|
||||
ULONG AllocatedSize;
|
||||
ULONG SectionSize;
|
||||
PVOID ModuleInformation;
|
||||
PVOID BackTraceInformation;
|
||||
PVOID HeapInformation;
|
||||
PVOID LockInformation;
|
||||
PVOID Reserved[8];
|
||||
} DEBUG_BUFFER, *PDEBUG_BUFFER;
|
||||
typedef struct _DEBUG_MODULE_INFORMATION
|
||||
{
|
||||
ULONG Reserved[2];
|
||||
PVOID Base;
|
||||
ULONG Size;
|
||||
ULONG Flags;
|
||||
USHORT Index;
|
||||
USHORT Unknown;
|
||||
USHORT LoadCount;
|
||||
USHORT ModuleNameOffset;
|
||||
CHAR ImageName[256];
|
||||
} DEBUG_MODULE_INFORMATION, *PDEBUG_MODULE_INFORMATION;
|
||||
typedef struct _DEBUG_HEAP_INFORMATION
|
||||
{
|
||||
PVOID Base;
|
||||
ULONG Flags;
|
||||
USHORT Granularity;
|
||||
USHORT Unknown;
|
||||
ULONG Allocated;
|
||||
ULONG Committed;
|
||||
ULONG TagCount;
|
||||
ULONG BlockCount;
|
||||
ULONG Reserved[7];
|
||||
PVOID Tags;
|
||||
PVOID Blocks;
|
||||
} DEBUG_HEAP_INFORMATION, *PDEBUG_HEAP_INFORMATION;
|
||||
typedef struct _DEBUG_LOCK_INFORMATION
|
||||
{
|
||||
PVOID Address;
|
||||
USHORT Type;
|
||||
USHORT CreatorBackTraceIndex;
|
||||
ULONG OwnerThreadId;
|
||||
ULONG ActiveCount;
|
||||
ULONG ContentionCount;
|
||||
ULONG EntryCount;
|
||||
ULONG RecursionCount;
|
||||
ULONG NumberOfSharedWaiters;
|
||||
ULONG NumberOfExclusiveWaiters;
|
||||
} DEBUG_LOCK_INFORMATION, *PDEBUG_LOCK_INFORMATION;
|
||||
typedef struct _RTL_HANDLE
|
||||
{
|
||||
struct _RTL_HANDLE *Next; /* pointer to next free handle */
|
||||
} RTL_HANDLE, *PRTL_HANDLE;
|
||||
|
||||
typedef struct _RTL_HANDLE_TABLE
|
||||
{
|
||||
ULONG TableSize; /* maximum number of handles */
|
||||
ULONG HandleSize; /* size of handle in bytes */
|
||||
PRTL_HANDLE Handles; /* pointer to handle array */
|
||||
PRTL_HANDLE Limit; /* limit of pointers */
|
||||
PRTL_HANDLE FirstFree; /* pointer to first free handle */
|
||||
PRTL_HANDLE LastUsed; /* pointer to last allocated handle */
|
||||
} RTL_HANDLE_TABLE, *PRTL_HANDLE_TABLE;
|
||||
#ifdef READY_FOR_NEW_NTDLL
|
||||
typedef struct _LOCK_INFORMATION
|
||||
{
|
||||
ULONG LockCount;
|
||||
DEBUG_LOCK_INFORMATION LockEntry[1];
|
||||
} LOCK_INFORMATION, *PLOCK_INFORMATION;
|
||||
typedef struct _HEAP_INFORMATION
|
||||
{
|
||||
ULONG HeapCount;
|
||||
DEBUG_HEAP_INFORMATION HeapEntry[1];
|
||||
} HEAP_INFORMATION, *PHEAP_INFORMATION;
|
||||
typedef struct _MODULE_INFORMATION
|
||||
{
|
||||
ULONG ModuleCount;
|
||||
DEBUG_MODULE_INFORMATION ModuleEntry[1];
|
||||
} MODULE_INFORMATION, *PMODULE_INFORMATION;
|
||||
/* END REVIEW AREA */
|
||||
#endif
|
||||
|
||||
typedef struct _EXCEPTION_REGISTRATION
|
||||
{
|
||||
struct _EXCEPTION_REGISTRATION* prev;
|
||||
|
@ -138,6 +253,19 @@ typedef BOOLEAN
|
|||
PRTL_RANGE Range
|
||||
);
|
||||
|
||||
typedef struct _RTL_RESOURCE
|
||||
{
|
||||
RTL_CRITICAL_SECTION Lock;
|
||||
HANDLE SharedSemaphore;
|
||||
ULONG SharedWaiters;
|
||||
HANDLE ExclusiveSemaphore;
|
||||
ULONG ExclusiveWaiters;
|
||||
LONG NumberActive;
|
||||
HANDLE OwningThread;
|
||||
ULONG TimeoutBoost; /* ?? */
|
||||
PVOID DebugInfo; /* ?? */
|
||||
} RTL_RESOURCE, *PRTL_RESOURCE;
|
||||
|
||||
typedef struct _RANGE_LIST_ITERATOR
|
||||
{
|
||||
PLIST_ENTRY RangeListHead;
|
||||
|
|
218
reactos/include/ndk/umfuncs.h
Normal file
218
reactos/include/ndk/umfuncs.h
Normal file
|
@ -0,0 +1,218 @@
|
|||
/*
|
||||
* PROJECT: ReactOS Native Headers
|
||||
* FILE: include/ndk/umfuncs.h
|
||||
* PURPOSE: Prototypes for NT Library Functions
|
||||
* PROGRAMMER: Alex Ionescu (alex@relsoft.net)
|
||||
*/
|
||||
#ifndef _UMFUNCS_H
|
||||
#define _UMFUNCS_H
|
||||
|
||||
/* DEPENDENCIES **************************************************************/
|
||||
#include "ldrtypes.h"
|
||||
#include "lpctypes.h"
|
||||
#include <csrss/csrss.h> /* FIXME: Temporary */
|
||||
|
||||
/* PROTOTYPES ****************************************************************/
|
||||
|
||||
/*
|
||||
* CSR Functions
|
||||
*/
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
CsrClientConnectToServer(VOID);
|
||||
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
CsrClientCallServer(
|
||||
PCSRSS_API_REQUEST Request,
|
||||
PCSRSS_API_REPLY Reply OPTIONAL,
|
||||
ULONG Length,
|
||||
ULONG ReplyLength
|
||||
);
|
||||
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
CsrIdentifyAlertableThread(VOID);
|
||||
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
CsrNewThread(VOID);
|
||||
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
CsrSetPriorityClass(
|
||||
HANDLE Process,
|
||||
PULONG PriorityClass
|
||||
);
|
||||
|
||||
VOID
|
||||
STDCALL
|
||||
CsrProbeForRead(
|
||||
IN CONST PVOID Address,
|
||||
IN ULONG Length,
|
||||
IN ULONG Alignment
|
||||
);
|
||||
|
||||
VOID
|
||||
STDCALL
|
||||
CsrProbeForWrite(
|
||||
IN CONST PVOID Address,
|
||||
IN ULONG Length,
|
||||
IN ULONG Alignment
|
||||
);
|
||||
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
CsrCaptureParameterBuffer(
|
||||
PVOID ParameterBuffer,
|
||||
ULONG ParameterBufferSize,
|
||||
PVOID* ClientAddress,
|
||||
PVOID* ServerAddress
|
||||
);
|
||||
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
CsrReleaseParameterBuffer(PVOID ClientAddress);
|
||||
|
||||
/*
|
||||
* Debug Functions
|
||||
*/
|
||||
ULONG
|
||||
CDECL
|
||||
DbgPrint(
|
||||
IN PCH Format,
|
||||
IN ...
|
||||
);
|
||||
|
||||
VOID
|
||||
STDCALL
|
||||
DbgBreakPoint(VOID);
|
||||
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
DbgSsInitialize(
|
||||
HANDLE ReplyPort,
|
||||
ULONG Unknown1,
|
||||
ULONG Unknown2,
|
||||
ULONG Unknown3
|
||||
);
|
||||
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
DbgUiConnectToDbg(VOID);
|
||||
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
DbgUiContinue(
|
||||
PCLIENT_ID ClientId,
|
||||
ULONG ContinueStatus
|
||||
);
|
||||
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
DbgUiWaitStateChange(
|
||||
ULONG Unknown1,
|
||||
ULONG Unknown2
|
||||
);
|
||||
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
DbgUiRemoteBreakin(VOID);
|
||||
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
DbgUiIssueRemoteBreakin(HANDLE Process);
|
||||
|
||||
/*
|
||||
* Loader Functions
|
||||
*/
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
LdrDisableThreadCalloutsForDll(IN PVOID BaseAddress);
|
||||
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
LdrGetDllHandle(
|
||||
IN PWCHAR Path OPTIONAL,
|
||||
IN ULONG Unknown2,
|
||||
IN PUNICODE_STRING DllName,
|
||||
OUT PVOID *BaseAddress
|
||||
);
|
||||
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
LdrFindEntryForAddress(
|
||||
IN PVOID Address,
|
||||
OUT PLDR_DATA_TABLE_ENTRY *Module
|
||||
);
|
||||
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
LdrGetProcedureAddress(
|
||||
IN PVOID BaseAddress,
|
||||
IN PANSI_STRING Name,
|
||||
IN ULONG Ordinal,
|
||||
OUT PVOID *ProcedureAddress
|
||||
);
|
||||
|
||||
VOID
|
||||
STDCALL
|
||||
LdrInitializeThunk(
|
||||
ULONG Unknown1,
|
||||
ULONG Unknown2,
|
||||
ULONG Unknown3,
|
||||
ULONG Unknown4
|
||||
);
|
||||
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
LdrLoadDll(
|
||||
IN PWSTR SearchPath OPTIONAL,
|
||||
IN ULONG LoadFlags,
|
||||
IN PUNICODE_STRING Name,
|
||||
OUT PVOID *BaseAddress OPTIONAL
|
||||
);
|
||||
|
||||
PIMAGE_BASE_RELOCATION
|
||||
STDCALL
|
||||
LdrProcessRelocationBlock(
|
||||
IN PVOID Address,
|
||||
IN USHORT Count,
|
||||
IN PUSHORT TypeOffset,
|
||||
IN ULONG_PTR Delta
|
||||
);
|
||||
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
LdrQueryImageFileExecutionOptions(
|
||||
IN PUNICODE_STRING SubKey,
|
||||
IN PCWSTR ValueName,
|
||||
IN ULONG ValueSize,
|
||||
OUT PVOID Buffer,
|
||||
IN ULONG BufferSize,
|
||||
OUT PULONG RetunedLength OPTIONAL
|
||||
);
|
||||
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
LdrShutdownProcess(VOID);
|
||||
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
LdrShutdownThread(VOID);
|
||||
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
LdrUnloadDll(IN PVOID BaseAddress);
|
||||
|
||||
NTSTATUS
|
||||
STDCALL
|
||||
LdrVerifyImageMatchesChecksum(
|
||||
IN HANDLE FileHandle,
|
||||
ULONG Unknown1,
|
||||
ULONG Unknown2,
|
||||
ULONG Unknown3
|
||||
);
|
||||
|
||||
#endif
|
||||
/* EOF */
|
|
@ -23,7 +23,6 @@
|
|||
|
||||
/* FIXME: Clean this sh*t up */
|
||||
#include <ntdll/base.h>
|
||||
#include <ntdll/rtl.h>
|
||||
#include <ntdll/dbg.h>
|
||||
#include <ntdll/csr.h>
|
||||
#include <ntdll/ldr.h>
|
||||
|
|
|
@ -13,13 +13,18 @@
|
|||
#define NTOS_MODE_USER
|
||||
#include <ndk/ntndk.h>
|
||||
|
||||
/* NTDLL Headers FIXME: These will be gone imminently */
|
||||
#include <ntdll/ntdll.h>
|
||||
#include <ntdll/ldr.h>
|
||||
#include <ntdll/csr.h>
|
||||
|
||||
/* Internal NTDLL */
|
||||
#include "ntdllp.h"
|
||||
|
||||
/* CSRSS Header */
|
||||
#include <csrss/csrss.h>
|
||||
|
||||
/* Helper Macros */
|
||||
#include <reactos/helper.h>
|
||||
|
||||
/* NTDLL Public Headers. FIXME: Combine/clean these after NDK */
|
||||
#include <ntdll/csr.h>
|
||||
#include <ntdll/rtl.h>
|
||||
#include <ntdll/ldr.h>
|
||||
#include <ntdll/ntdll.h>
|
||||
|
||||
/* EOF */
|
||||
|
|
|
@ -14,7 +14,6 @@
|
|||
#define NTOS_MODE_USER
|
||||
#include <ndk/ntndk.h>
|
||||
#include <ntdll/csr.h>
|
||||
#include <ntdll/rtl.h>
|
||||
#include <ntdll/ldr.h>
|
||||
#include <rosrtl/string.h>
|
||||
#include <sm/helper.h>
|
||||
|
|
Loading…
Reference in a new issue