Author: sginsberg Date: Fri Sep 12 10:09:17 2008 New Revision: 36166
URL: http://svn.reactos.org/svn/reactos?rev=36166&view=rev Log: - Uncomment NTDLL exports which we implement, and add stubs for numerous routines - Add missing prototypes to NDK - Implement RtlInterlockedCompareExchange64 and RtlGetCurrentProcessorNumber - Rename RtlpCurrentPeb to RtlGetCurrentPeb and export it from NTDLL
Added: trunk/reactos/lib/rtl/actctx.c (with props) trunk/reactos/lib/rtl/interlck.c (with props) trunk/reactos/lib/rtl/slist.c (with props) Modified: trunk/reactos/dll/ntdll/def/ntdll_i386.def trunk/reactos/dll/ntdll/ldr/utils.c trunk/reactos/dll/ntdll/rtl/libsupp.c trunk/reactos/include/ndk/ldrfuncs.h trunk/reactos/include/ndk/rtlfuncs.h trunk/reactos/lib/rtl/env.c trunk/reactos/lib/rtl/error.c trunk/reactos/lib/rtl/exception.c trunk/reactos/lib/rtl/heap.c trunk/reactos/lib/rtl/process.c trunk/reactos/lib/rtl/rtl.rbuild trunk/reactos/lib/rtl/security.c trunk/reactos/lib/rtl/thread.c trunk/reactos/lib/rtl/unicode.c trunk/reactos/ntoskrnl/rtl/libsupp.c
Modified: trunk/reactos/dll/ntdll/def/ntdll_i386.def URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/ntdll/def/ntdll_i386.de... ============================================================================== --- trunk/reactos/dll/ntdll/def/ntdll_i386.def [iso-8859-1] (original) +++ trunk/reactos/dll/ntdll/def/ntdll_i386.def [iso-8859-1] Fri Sep 12 10:09:17 2008 @@ -92,13 +92,13 @@ LdrFindEntryForAddress@8 ;LdrEnumerateLoadedModules ;LdrFindCreateProcessManifest -;LdrFindEntryForAddress +LdrFindEntryForAddress@8 LdrFindResourceDirectory_U@16 ;LdrFindResourceEx_U LdrFindResource_U@16 LdrGetDllHandle@16 ;LdrFlushAlternateResourceModules -;LdrGetDllHandle +LdrGetDllHandle@16 ;LdrGetDllHandleEx LdrGetProcedureAddress@16 ;LdrHotPatchRoutine @@ -106,7 +106,7 @@ LdrInitializeThunk@16 ;LdrLoadAlternateResourceModule LdrLoadDll@16 -;LdrLockLoaderLock +LdrLockLoaderLock@12 ;LdrOpenImageFileOptionsKey LdrProcessRelocationBlock@16 LdrQueryImageFileExecutionOptions@24 @@ -117,9 +117,9 @@ ;LdrSetDllManifestProber LdrShutdownProcess@0 LdrShutdownThread@0 -;LdrUnloadAlternateResourceModule +LdrUnloadAlternateResourceModule@4 LdrUnloadDll@4 -;LdrUnlockLoaderLock +LdrUnlockLoaderLock@8 LdrVerifyImageMatchesChecksum@16 NlsAnsiCodePage DATA NlsMbCodePageTag DATA @@ -430,14 +430,14 @@ ;RtlAbortRXact RtlAbsoluteToSelfRelativeSD@12 RtlAcquirePebLock@0 -;RtlAcquirePrivilege +RtlAcquirePrivilege@16 RtlAcquireResourceExclusive@8 RtlAcquireResourceShared@8 RtlAcquireSRWLockExclusive@4 RtlAcquireSRWLockShared@4 ;RtlActivateActivationContext ;RtlActivateActivationContextEx -;RtlActivateActivationContextUnsafeFast +RtlActivateActivationContextUnsafeFast@8 RtlAddAccessAllowedAce@16 RtlAddAccessAllowedAceEx@20 RtlAddAccessAllowedObjectAce@28 @@ -453,13 +453,13 @@ RtlAddAuditAccessObjectAce@36 ;RtlAddCompoundAce RtlAddMandatoryAce@24 -;RtlAddRefActivationContext +RtlAddRefActivationContext@4 ;RtlAddRefMemoryStream ;RtlAddVectoredContinueHandler RtlAddVectoredExceptionHandler@8 ;RtlAddressInSectionTable RtlAdjustPrivilege@16 -;RtlAllocateActivationContextStack +RtlAllocateActivationContextStack@4 RtlAllocateAndInitializeSid@44 RtlAllocateHandle@8 RtlAllocateHeap@12 @@ -479,7 +479,7 @@ RtlAreBitsSet@12 RtlAssert@16 ;RtlCancelTimer -;RtlCaptureContext +RtlCaptureContext@4 RtlCaptureStackBackTrace@16 ;RtlCaptureStackContext RtlCharToInteger@12 @@ -530,7 +530,7 @@ RtlCreateQueryDebugBuffer@8 RtlCreateRegistryKey@8 RtlCreateSecurityDescriptor@8 -;RtlCreateSystemVolumeInformationFolder +RtlCreateSystemVolumeInformationFolder@4 RtlCreateTagHeap@16 RtlCreateTimer@28 RtlCreateTimerQueue@4 @@ -542,9 +542,10 @@ RtlCustomCPToUnicodeN@24 RtlCutoverTimeToSystemTime@16 RtlDeNormalizeProcessParams@4 -;RtlDeactivateActivationContext +RtlDeactivateActivationContext@8 +RtlDeactivateActivationContextUnsafeFast@4 RtlDecodePointer=RtlEncodePointer@4 -;RtlDecodeSystemPointer +RtlDecodeSystemPointer@4=RtlEncodeSystemPointer@4 RtlDecompressBuffer@24 RtlDecompressFragment@32 ;RtlDefaultNpAcl @@ -587,7 +588,7 @@ RtlEmptyAtomTable@8 ;RtlEnableEarlyCriticalSectionEventCreation RtlEncodePointer@4 -;RtlEncodeSystemPointer +RtlEncodeSystemPointer@4 RtlEnlargedIntegerMultiply@8 RtlEnlargedUnsignedDivide@16 RtlEnlargedUnsignedMultiply@8 @@ -616,8 +617,8 @@ RtlFillMemoryUlong@12 ;RtlFinalReleaseOutOfProcessMemoryStream ;RtlFindActivationContextSectionGuid -;RtlFindActivationContextSectionString -;RtlFindCharInUnicodeString +RtlFindActivationContextSectionString@20 +RtlFindCharInUnicodeString@16 RtlFindClearBits@12 RtlFindClearBitsAndSet@12 RtlFindClearRuns@16 @@ -629,9 +630,9 @@ RtlFindNextForwardRunClear@12 RtlFindSetBits@12 RtlFindSetBitsAndClear@12 -;RtlFirstEntrySList +RtlFirstEntrySList@4 RtlFirstFreeAce@8 -;RtlFlushSecureMemoryCache +RtlFlushSecureMemoryCache@8 RtlFormatCurrentUserKeyPath@4 RtlFormatMessage@32 ;RtlFormatMessageEx @@ -647,14 +648,14 @@ RtlGUIDFromString@8 RtlGenerate8dot3Name@16 RtlGetAce@12 -;RtlGetActiveActivationContext -;RtlGetCallersAddress +RtlGetActiveActivationContext@4 +RtlGetCallersAddress@8 RtlGetCompressionWorkSpaceSize@12 RtlGetControlSecurityDescriptor@12 ;RtlGetCriticalSectionRecursionCount RtlGetCurrentDirectory_U@8 -;RtlGetCurrentPeb -;RtlGetCurrentProcessorNumber +RtlGetCurrentPeb@0 +RtlGetCurrentProcessorNumber@0 RtlGetDaclSecurityDescriptor@16 RtlGetElementGenericTable@8 RtlGetElementGenericTableAvl@8 @@ -689,7 +690,7 @@ RtlImageRvaToVa@16 RtlImpersonateSelf@4 RtlInitAnsiString@8 -;RtlInitAnsiStringEx +RtlInitAnsiStringEx@8 RtlInitCodePageTable@8 ;RtlInitMemoryStream RtlInitNlsTables@16 @@ -708,7 +709,7 @@ RtlInitializeHandleTable@12 ;RtlInitializeRXact RtlInitializeResource@4 -;RtlInitializeSListHead +RtlInitializeSListHead@4 RtlInitializeSid@12 RtlInitializeSRWLock@4 RtlInsertElementGenericTable@16 @@ -718,11 +719,11 @@ RtlInt64ToUnicodeString@16 RtlIntegerToChar@16 RtlIntegerToUnicodeString@12 -;RtlInterlockedCompareExchange64 -;RtlInterlockedFlushSList -;RtlInterlockedPopEntrySList -;RtlInterlockedPushEntrySList -;RtlInterlockedPushListSList +RtlInterlockedCompareExchange64@20 +RtlInterlockedFlushSList@4 +RtlInterlockedPopEntrySList@4 +RtlInterlockedPushEntrySList@8 +RtlInterlockedPushListSList@16 RtlIpv4AddressToStringA@8 RtlIpv4AddressToStringExA@16 RtlIpv4AddressToStringExW@16 @@ -779,8 +780,8 @@ ;RtlMultiAppendUnicodeStringBuffer RtlMultiByteToUnicodeN@20 RtlMultiByteToUnicodeSize@12 -;RtlMultipleAllocateHeap -;RtlMultipleFreeHeap +RtlMultipleAllocateHeap@20 +RtlMultipleFreeHeap@16 ;RtlNewInstanceSecurityObject ;RtlNewSecurityGrantedAccess RtlNewSecurityObject@24 @@ -789,7 +790,7 @@ RtlNormalizeProcessParams@4 RtlNtPathNameToDosPathName@16 RtlNtStatusToDosError@4 -;RtlNtStatusToDosErrorNoTeb +RtlNtStatusToDosErrorNoTeb@4 RtlNumberGenericTableElements@4 RtlNumberGenericTableElementsAvl@4 RtlNumberOfClearBits@4 @@ -803,14 +804,14 @@ ;RtlPopFrame RtlPrefixString@12 RtlPrefixUnicodeString@12 -;RtlProtectHeap +RtlProtectHeap@8 ;RtlPushFrame RtlQueryAtomInAtomTable@24 -;RtlQueryDepthSList +RtlQueryDepthSList@4 RtlQueryEnvironmentVariable_U@12 -;RtlQueryHeapInformation +RtlQueryHeapInformation@20 RtlQueryInformationAcl@16 -;RtlQueryInformationActivationContext +RtlQueryInformationActivationContext@28 ;RtlQueryInformationActiveActivationContext ;RtlQueryInterfaceMemoryStream ;RtlQueryProcessBackTraceInformation @@ -832,17 +833,17 @@ ;RtlReadOutOfProcessMemoryStream RtlRealPredecessor@4 RtlRealSuccessor@4 -;RtlRegisterSecureMemoryCacheCallback +RtlRegisterSecureMemoryCacheCallback@4 RtlRegisterWait@24 -;RtlReleaseActivationContext +RtlReleaseActivationContext@4 ;RtlReleaseMemoryStream RtlReleasePebLock@0 -;RtlReleasePrivilege +RtlReleasePrivilege@4 RtlReleaseRelativeName@4 RtlReleaseResource@4 RtlReleaseSRWLockExclusive@4 RtlReleaseSRWLockShared@4 -;RtlRemoteCall +RtlRemoteCall@28 ;RtlRemoveVectoredContinueHandler RtlRemoveVectoredExceptionHandler@4 RtlResetRtlTranslations@4 @@ -866,7 +867,7 @@ ;RtlSetEnvironmentStrings RtlSetEnvironmentVariable@12 RtlSetGroupSecurityDescriptor@12 -;RtlSetHeapInformation +RtlSetHeapInformation@16 RtlSetInformationAcl@16 ;RtlSetIoCompletionCallback RtlSetLastWin32Error@4 @@ -883,7 +884,7 @@ ;RtlSetThreadPoolStartFunc RtlSetTimeZoneInformation@4 ;RtlSetTimer -;RtlSetUnhandledExceptionFilter +RtlSetUnhandledExceptionFilter@4 ;RtlSetUnicodeCallouts RtlSetUserFlagsHeap@16 RtlSetUserValueHeap@16 @@ -953,18 +954,18 @@ RtlValidateProcessHeaps@0 RtlValidateUnicodeString@8 RtlVerifyVersionInfo@16 -;RtlWalkFrameChain -;RtlWalkHeap +RtlWalkFrameChain@12 +RtlWalkHeap@8 ;RtlWow64EnableFsRedirection ;RtlWow64EnableFsRedirectionEx RtlWakeAllConditionVariable@4 RtlWakeConditionVariable@4 RtlWriteRegistryValue@24 ;RtlWriteMemoryStream -;RtlWriteRegistryValue -;RtlZeroHeap +RtlWriteRegistryValue@24 +RtlZeroHeap@8 RtlZeroMemory@8 -;RtlZombifyActivationContext +RtlZombifyActivationContext@4 ;RtlpApplyLengthFunction RtlpEnsureBufferSize@12 ;RtlpNotOwnerCriticalSection @@ -1285,7 +1286,7 @@ __iscsymf __toascii _alldiv -;_alldvrm +_alldvrm _allmul _alloca_probe _allrem @@ -1293,7 +1294,7 @@ _allshr _atoi64 _aulldiv -;_aulldvrm +_aulldvrm _aullrem _aullshr _chkstk
Modified: trunk/reactos/dll/ntdll/ldr/utils.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/ntdll/ldr/utils.c?rev=3... ============================================================================== --- trunk/reactos/dll/ntdll/ldr/utils.c [iso-8859-1] (original) +++ trunk/reactos/dll/ntdll/ldr/utils.c [iso-8859-1] Fri Sep 12 10:09:17 2008 @@ -3239,4 +3239,29 @@ return (PIMAGE_BASE_RELOCATION)TypeOffset; }
-/* EOF */ +NTSTATUS +NTAPI +LdrLockLoaderLock(IN ULONG Flags, + OUT PULONG Disposition OPTIONAL, + OUT PULONG Cookie OPTIONAL) +{ + UNIMPLEMENTED; + return STATUS_NOT_IMPLEMENTED; +} + +NTSTATUS +NTAPI +LdrUnlockLoaderLock(IN ULONG Flags, + IN ULONG Cookie OPTIONAL) +{ + UNIMPLEMENTED; + return STATUS_NOT_IMPLEMENTED; +} + +BOOLEAN +NTAPI +LdrUnloadAlternateResourceModule(IN PVOID BaseAddress) +{ + UNIMPLEMENTED; + return FALSE; +}
Modified: trunk/reactos/dll/ntdll/rtl/libsupp.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/ntdll/rtl/libsupp.c?rev... ============================================================================== --- trunk/reactos/dll/ntdll/rtl/libsupp.c [iso-8859-1] (original) +++ trunk/reactos/dll/ntdll/rtl/libsupp.c [iso-8859-1] Fri Sep 12 10:09:17 2008 @@ -63,9 +63,12 @@ return UserMode; }
+/* + * @implemented + */ PPEB NTAPI -RtlpCurrentPeb(VOID) +RtlGetCurrentPeb(VOID) { return NtCurrentPeb(); }
Modified: trunk/reactos/include/ndk/ldrfuncs.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/include/ndk/ldrfuncs.h?rev=... ============================================================================== --- trunk/reactos/include/ndk/ldrfuncs.h [iso-8859-1] (original) +++ trunk/reactos/include/ndk/ldrfuncs.h [iso-8859-1] Fri Sep 12 10:09:17 2008 @@ -59,6 +59,7 @@ );
BOOLEAN +NTAPI LdrUnloadAlternateResourceModule( IN PVOID BaseAddress ); @@ -86,6 +87,7 @@ );
NTSTATUS +NTAPI LdrLockLoaderLock( IN ULONG Flags, OUT PULONG Disposition OPTIONAL,
Modified: trunk/reactos/include/ndk/rtlfuncs.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/include/ndk/rtlfuncs.h?rev=... ============================================================================== --- trunk/reactos/include/ndk/rtlfuncs.h [iso-8859-1] (original) +++ trunk/reactos/include/ndk/rtlfuncs.h [iso-8859-1] Fri Sep 12 10:09:17 2008 @@ -408,6 +408,13 @@ );
NTSYSAPI +ULONG +NTAPI +RtlNtStatusToDosErrorNoTeb( + IN NTSTATUS Status +); + +NTSYSAPI VOID NTAPI RtlSetLastWin32ErrorAndNtStatusFromNtStatus( @@ -568,6 +575,14 @@ );
NTSYSAPI +PVOID +NTAPI +RtlProtectHeap( + IN PVOID HeapHandle, + IN BOOLEAN Protect +); + +NTSYSAPI PWSTR NTAPI RtlQueryTagHeap( @@ -647,6 +662,14 @@ PVOID P );
+NTSYSAPI +NTSTATUS +NTAPI +RtlWalkHeap( + IN HANDLE HeapHandle, + IN PVOID HeapEntry +); + #define RtlGetProcessHeap() (NtCurrentPeb()->ProcessHeap)
// @@ -1884,6 +1907,13 @@ // Process Management Functions // NTSYSAPI +PPEB +NTAPI +RtlGetCurrentPeb( + VOID +); + +NTSYSAPI VOID NTAPI RtlAcquirePebLock(VOID); @@ -1973,12 +2003,32 @@ RtlReleasePebLock(VOID);
NTSYSAPI +NTSTATUS +NTAPI +RtlRemoteCall( + IN HANDLE Process, + IN HANDLE Thread, + IN PVOID CallSite, + IN ULONG ArgumentCount, + IN PULONG Arguments, + IN BOOLEAN PassContext, + IN BOOLEAN AlreadySuspended +); + +NTSYSAPI VOID NTAPI RtlSetProcessIsCritical( IN BOOLEAN NewValue, OUT PBOOLEAN OldValue OPTIONAL, IN BOOLEAN IsWinlogon +); + +NTSYSAPI +ULONG +NTAPI +RtlGetCurrentProcessorNumber( + VOID );
#define NtCurrentPeb() (NtCurrentTeb()->ProcessEnvironmentBlock) @@ -2771,6 +2821,15 @@ // Activation Context Functions // #ifdef NTOS_MODE_USER + +NTSYSAPI +VOID +NTAPI +RtlAddRefActivationContext( + PVOID Context +); + + NTSYSAPI NTSTATUS NTAPI @@ -2798,6 +2857,14 @@ NTAPI RtlReleaseActivationContext( IN PVOID *Context +); + +NTSYSAPI +NTSTATUS +NTAPI +RtlDeactivateActivationContext( + DWORD dwFlags, + ULONG_PTR ulCookie );
NTSYSAPI @@ -2832,6 +2899,28 @@ IN PUNICODE_STRING SectionName, IN PVOID Unknown2 ); + +NTSYSAPI +NTSTATUS +NTAPI +RtlQueryInformationActivationContext( + DWORD dwFlags, + PVOID Context, + PVOID pvSubInstance, + ULONG ulInfoClass, + PVOID pvBuffer, + SIZE_T cbBuffer OPTIONAL, + SIZE_T *pcbWrittenOrRequired OPTIONAL +); + +NTSYSAPI +NTSTATUS +NTAPI +RtlZombifyActivationContext( + PVOID Context +); + + #endif
//
Added: trunk/reactos/lib/rtl/actctx.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/rtl/actctx.c?rev=36166&... ============================================================================== --- trunk/reactos/lib/rtl/actctx.c (added) +++ trunk/reactos/lib/rtl/actctx.c [iso-8859-1] Fri Sep 12 10:09:17 2008 @@ -1,0 +1,106 @@ +/* + * COPYRIGHT: See COPYING in the top level directory + * PROJECT: ReactOS Runtime Library + * PURPOSE: Activation Context Support + * FILE: lib/rtl/actctx.c + * PROGRAMERS: Stefan Ginsberg (stefan__100__@hotmail.com) + */ + +/* INCLUDES *****************************************************************/ + +#include <rtl.h> + +#define NDEBUG +#include <debug.h> + +/* FUNCTIONS ***************************************************************/ + +VOID +NTAPI +RtlAddRefActivationContext(PVOID Context) +{ + UNIMPLEMENTED; +} + +NTSTATUS +NTAPI +RtlActivateActivationContextUnsafeFast(IN PRTL_CALLER_ALLOCATED_ACTIVATION_CONTEXT_STACK_FRAME_EXTENDED Frame, + IN PVOID Context) +{ + UNIMPLEMENTED; + return STATUS_NOT_IMPLEMENTED; +} + +NTSTATUS +NTAPI +RtlAllocateActivationContextStack(IN PVOID *Context) +{ + UNIMPLEMENTED; + return STATUS_NOT_IMPLEMENTED; +} + +NTSTATUS +NTAPI +RtlGetActiveActivationContext(IN PVOID *Context) +{ + UNIMPLEMENTED; + return STATUS_NOT_IMPLEMENTED; +} + +VOID +NTAPI +RtlReleaseActivationContext(IN PVOID *Context) +{ + UNIMPLEMENTED; +} + +NTSTATUS +NTAPI +RtlFindActivationContextSectionString(IN PVOID Unknown0, + IN PVOID Unknown1, + IN ULONG SectionType, + IN PUNICODE_STRING SectionName, + IN PVOID Unknown2) +{ + UNIMPLEMENTED; + return STATUS_NOT_IMPLEMENTED; +} + +NTSTATUS +NTAPI +RtlQueryInformationActivationContext(DWORD dwFlags, + PVOID Context, + PVOID pvSubInstance, + ULONG ulInfoClass, + PVOID pvBuffer, + SIZE_T cbBuffer OPTIONAL, + SIZE_T *pcbWrittenOrRequired OPTIONAL) +{ + UNIMPLEMENTED; + return STATUS_NOT_IMPLEMENTED; +} + +NTSTATUS +NTAPI +RtlZombifyActivationContext(PVOID Context) +{ + UNIMPLEMENTED; + return STATUS_NOT_IMPLEMENTED; +} + +NTSTATUS +NTAPI +RtlDeactivateActivationContext(DWORD dwFlags, + ULONG_PTR ulCookie) +{ + UNIMPLEMENTED; + return STATUS_NOT_IMPLEMENTED; +} + +NTSTATUS +NTAPI +RtlDeactivateActivationContextUnsafeFast(IN PRTL_CALLER_ALLOCATED_ACTIVATION_CONTEXT_STACK_FRAME_EXTENDED Frame) +{ + UNIMPLEMENTED; + return STATUS_NOT_IMPLEMENTED; +}
Propchange: trunk/reactos/lib/rtl/actctx.c ------------------------------------------------------------------------------ svn:eol-style = native
Modified: trunk/reactos/lib/rtl/env.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/rtl/env.c?rev=36166&... ============================================================================== --- trunk/reactos/lib/rtl/env.c [iso-8859-1] (original) +++ trunk/reactos/lib/rtl/env.c [iso-8859-1] Fri Sep 12 10:09:17 2008 @@ -12,7 +12,6 @@ #define NDEBUG #include <debug.h>
-PPEB NTAPI RtlpCurrentPeb(VOID); /* FUNCTIONS *****************************************************************/
/* @@ -508,7 +507,7 @@
if (Environment == NULL) { - PPEB Peb = RtlpCurrentPeb(); + PPEB Peb = RtlGetCurrentPeb(); if (Peb) { Environment = Peb->ProcessParameters->Environment; SysEnvUsed = TRUE;
Modified: trunk/reactos/lib/rtl/error.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/rtl/error.c?rev=36166&a... ============================================================================== --- trunk/reactos/lib/rtl/error.c [iso-8859-1] (original) +++ trunk/reactos/lib/rtl/error.c [iso-8859-1] Fri Sep 12 10:09:17 2008 @@ -870,7 +870,7 @@ * * @implemented */ -DWORD NTAPI +ULONG NTAPI RtlNtStatusToDosErrorNoTeb(IN NTSTATUS Status) { PERROR_TABLE Table = (PERROR_TABLE)ErrorTable;
Modified: trunk/reactos/lib/rtl/exception.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/rtl/exception.c?rev=361... ============================================================================== --- trunk/reactos/lib/rtl/exception.c [iso-8859-1] (original) +++ trunk/reactos/lib/rtl/exception.c [iso-8859-1] Fri Sep 12 10:09:17 2008 @@ -169,4 +169,13 @@ return ERROR_CALL_NOT_IMPLEMENTED; }
-/* EOF */ +/* + * @unimplemented + */ +PVOID +NTAPI +RtlSetUnhandledExceptionFilter(IN PVOID TopLevelExceptionFilter) +{ + UNIMPLEMENTED; + return NULL; +}
Modified: trunk/reactos/lib/rtl/heap.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/rtl/heap.c?rev=36166&am... ============================================================================== --- trunk/reactos/lib/rtl/heap.c [iso-8859-1] (original) +++ trunk/reactos/lib/rtl/heap.c [iso-8859-1] Fri Sep 12 10:09:17 2008 @@ -1869,4 +1869,66 @@ return 0; }
-/* EOF */ +NTSTATUS +NTAPI +RtlWalkHeap(IN HANDLE HeapHandle, + IN PVOID HeapEntry) +{ + UNIMPLEMENTED; + return STATUS_NOT_IMPLEMENTED; +} + +PVOID +NTAPI +RtlProtectHeap(IN PVOID HeapHandle, + IN BOOLEAN ReadOnly) +{ + UNIMPLEMENTED; + return NULL; +} + +DWORD +NTAPI +RtlSetHeapInformation(IN HANDLE HeapHandle OPTIONAL, + IN HEAP_INFORMATION_CLASS HeapInformationClass, + IN PVOID HeapInformation, + IN SIZE_T HeapInformationLength) +{ + UNIMPLEMENTED; + return 0; +} + +DWORD +NTAPI +RtlQueryHeapInformation(HANDLE HeapHandle, + HEAP_INFORMATION_CLASS HeapInformationClass, + PVOID HeapInformation OPTIONAL, + SIZE_T HeapInformationLength OPTIONAL, + PSIZE_T ReturnLength OPTIONAL) +{ + UNIMPLEMENTED; + return 0; +} + +DWORD +NTAPI +RtlMultipleAllocateHeap(IN PVOID HeapHandle, + IN DWORD Flags, + IN SIZE_T Size, + IN DWORD Count, + OUT PVOID *Array) +{ + UNIMPLEMENTED; + return 0; +} + +DWORD +NTAPI +RtlMultipleFreeHeap(IN PVOID HeapHandle, + IN DWORD Flags, + IN DWORD Count, + OUT PVOID *Array) +{ + UNIMPLEMENTED; + return 0; +}
Added: trunk/reactos/lib/rtl/interlck.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/rtl/interlck.c?rev=3616... ============================================================================== --- trunk/reactos/lib/rtl/interlck.c (added) +++ trunk/reactos/lib/rtl/interlck.c [iso-8859-1] Fri Sep 12 10:09:17 2008 @@ -1,0 +1,62 @@ +/* + * COPYRIGHT: See COPYING in the top level directory + * PROJECT: ReactOS Runtime Library + * PURPOSE: RTL Interlocked Routines + * FILE: lib/rtl/interlck.c + * PROGRAMERS: Stefan Ginsberg (stefan__100__@hotmail.com) + */ + +/* INCLUDES *****************************************************************/ + +#include <rtl.h> + +#define NDEBUG +#include <debug.h> + +/* FUNCTIONS ***************************************************************/ + +PSLIST_ENTRY +NTAPI +RtlInterlockedPopEntrySList(IN PSLIST_HEADER ListHead) +{ + UNIMPLEMENTED; + return NULL; +} + +PSLIST_ENTRY +NTAPI +RtlInterlockedPushEntrySList(IN PSLIST_HEADER ListHead, + IN PSLIST_ENTRY ListEntry) +{ + UNIMPLEMENTED; + return NULL; +} + +PSLIST_ENTRY +NTAPI +RtlInterlockedFlushSList(IN PSLIST_HEADER ListHead) +{ + UNIMPLEMENTED; + return NULL; +} + +PSLIST_ENTRY +NTAPI +RtlInterlockedPushListSList(IN PSLIST_HEADER ListHead, + IN PSLIST_ENTRY List, + IN PSLIST_ENTRY ListEnd, + IN ULONG Count) +{ + UNIMPLEMENTED; + return NULL; +} + +LONGLONG +NTAPI +RtlInterlockedCompareExchange64(LONGLONG volatile *Destination, + LONGLONG Exchange, + LONGLONG Comparand) +{ + /* Just call the intrinsic */ + return _InterlockedCompareExchange64(Destination, Exchange, Comparand); +}
Propchange: trunk/reactos/lib/rtl/interlck.c ------------------------------------------------------------------------------ svn:eol-style = native
Modified: trunk/reactos/lib/rtl/process.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/rtl/process.c?rev=36166... ============================================================================== --- trunk/reactos/lib/rtl/process.c [iso-8859-1] (original) +++ trunk/reactos/lib/rtl/process.c [iso-8859-1] Fri Sep 12 10:09:17 2008 @@ -332,6 +332,17 @@ /* * @unimplemented */ +PVOID +NTAPI +RtlEncodeSystemPointer(IN PVOID Pointer) +{ + UNIMPLEMENTED; + return NULL; +} + +/* + * @unimplemented + */ NTSYSAPI VOID NTAPI @@ -343,4 +354,10 @@ //TODO }
-/* EOF */ +ULONG +NTAPI +RtlGetCurrentProcessorNumber(VOID) +{ + /* Forward to kernel */ + return NtGetCurrentProcessorNumber(); +}
Modified: trunk/reactos/lib/rtl/rtl.rbuild URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/rtl/rtl.rbuild?rev=3616... ============================================================================== --- trunk/reactos/lib/rtl/rtl.rbuild [iso-8859-1] (original) +++ trunk/reactos/lib/rtl/rtl.rbuild [iso-8859-1] Fri Sep 12 10:09:17 2008 @@ -43,6 +43,7 @@
<file>access.c</file> <file>acl.c</file> + <file>actctx.c</file> <file>atom.c</file> <file>bitmap.c</file> <file>bootdata.c</file> @@ -61,6 +62,7 @@ <file>handle.c</file> <file>heap.c</file> <file>image.c</file> + <file>interlck.c</file> <file>message.c</file> <file>largeint.c</file> <file>luid.c</file> @@ -78,6 +80,7 @@ <file>resource.c</file> <file>sd.c</file> <file>security.c</file> + <file>slist.c</file> <file>sid.c</file> <file>sprintf.c</file> <file>srw.c</file>
Modified: trunk/reactos/lib/rtl/security.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/rtl/security.c?rev=3616... ============================================================================== --- trunk/reactos/lib/rtl/security.c [iso-8859-1] (original) +++ trunk/reactos/lib/rtl/security.c [iso-8859-1] Fri Sep 12 10:09:17 2008 @@ -81,6 +81,29 @@ return(Status); }
+/* + * @unimplemented + */ +NTSTATUS +NTAPI +RtlAcquirePrivilege(IN PULONG Privilege, + IN ULONG NumPriv, + IN ULONG Flags, + OUT PVOID *ReturnedState) +{ + UNIMPLEMENTED; + return STATUS_NOT_IMPLEMENTED; +} + +/* + * @unimplemented + */ +VOID +NTAPI +RtlReleasePrivilege(IN PVOID ReturnedState) +{ + UNIMPLEMENTED; +}
/* * @implemented @@ -224,4 +247,26 @@ UNIMPLEMENTED; return STATUS_NOT_IMPLEMENTED; } -/* EOF */ + +/* + * @unimplemented + */ +NTSTATUS +NTAPI +RtlRegisterSecureMemoryCacheCallback(IN PRTL_SECURE_MEMORY_CACHE_CALLBACK Callback) +{ + UNIMPLEMENTED; + return STATUS_NOT_IMPLEMENTED; +} + +/* + * @unimplemented + */ +BOOLEAN +NTAPI +RtlFlushSecureMemoryCache(IN PVOID MemoryCache, + IN OPTIONAL SIZE_T MemoryLength) +{ + UNIMPLEMENTED; + return FALSE; +}
Added: trunk/reactos/lib/rtl/slist.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/rtl/slist.c?rev=36166&a... ============================================================================== --- trunk/reactos/lib/rtl/slist.c (added) +++ trunk/reactos/lib/rtl/slist.c [iso-8859-1] Fri Sep 12 10:09:17 2008 @@ -1,0 +1,39 @@ +/* + * COPYRIGHT: See COPYING in the top level directory + * PROJECT: ReactOS Runtime Library + * PURPOSE: Slist Routines + * FILE: lib/rtl/slist.c + * PROGRAMERS: Stefan Ginsberg (stefan__100__@hotmail.com) + */ + +/* INCLUDES *****************************************************************/ + +#include <rtl.h> + +#define NDEBUG +#include <debug.h> + +/* FUNCTIONS ***************************************************************/ + +VOID +NTAPI +RtlInitializeSListHead(IN PSLIST_HEADER ListHead) +{ + UNIMPLEMENTED; +} + +PSLIST_ENTRY +NTAPI +RtlFirstEntrySList(IN const SLIST_HEADER *ListHead) +{ + UNIMPLEMENTED; + return NULL; +} + +WORD +NTAPI +RtlQueryDepthSList(IN PSLIST_HEADER ListHead) +{ + UNIMPLEMENTED; + return 0; +}
Propchange: trunk/reactos/lib/rtl/slist.c ------------------------------------------------------------------------------ svn:eol-style = native
Modified: trunk/reactos/lib/rtl/thread.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/rtl/thread.c?rev=36166&... ============================================================================== --- trunk/reactos/lib/rtl/thread.c [iso-8859-1] (original) +++ trunk/reactos/lib/rtl/thread.c [iso-8859-1] Fri Sep 12 10:09:17 2008 @@ -277,5 +277,16 @@ return NtCurrentTeb(); }
- -/* EOF */ +NTSTATUS +NTAPI +RtlRemoteCall(IN HANDLE Process, + IN HANDLE Thread, + IN PVOID CallSite, + IN ULONG ArgumentCount, + IN PULONG Arguments, + IN BOOLEAN PassContext, + IN BOOLEAN AlreadySuspended) +{ + UNIMPLEMENTED; + return STATUS_NOT_IMPLEMENTED; +}
Modified: trunk/reactos/lib/rtl/unicode.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/rtl/unicode.c?rev=36166... ============================================================================== --- trunk/reactos/lib/rtl/unicode.c [iso-8859-1] (original) +++ trunk/reactos/lib/rtl/unicode.c [iso-8859-1] Fri Sep 12 10:09:17 2008 @@ -2233,4 +2233,13 @@ } }
-/* EOF */ +NTSTATUS +NTAPI +RtlFindCharInUnicodeString(IN ULONG Flags, + IN PUNICODE_STRING SearchString, + IN PCUNICODE_STRING MatchString, + OUT PUSHORT Position) +{ + UNIMPLEMENTED; + return STATUS_NOT_IMPLEMENTED; +}
Modified: trunk/reactos/ntoskrnl/rtl/libsupp.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/rtl/libsupp.c?rev=... ============================================================================== --- trunk/reactos/ntoskrnl/rtl/libsupp.c [iso-8859-1] (original) +++ trunk/reactos/ntoskrnl/rtl/libsupp.c [iso-8859-1] Fri Sep 12 10:09:17 2008 @@ -118,7 +118,7 @@
PPEB STDCALL -RtlpCurrentPeb(VOID) +RtlGetCurrentPeb(VOID) { return ((PEPROCESS)(KeGetCurrentThread()->ApcState.Process))->Peb; }