Author: ion
Date: Wed Oct 25 22:23:45 2006
New Revision: 24652
URL:
http://svn.reactos.org/svn/reactos?rev=24652&view=rev
Log:
- Add some missing/internal definitions to proper headers.
- Get rid of FLUSH_TLB macros and use KeFlushCurrentTb and the MSVC_compatible instrinsic
__invlpg;
- Fix some prototypes.
- Fixed unsigned/signed mismatches.
- Fix SEH usage in ExAllocatePoolWithQuotaTag.
Modified:
trunk/reactos/include/ddk/ntifs.h
trunk/reactos/include/ndk/iotypes.h
trunk/reactos/include/ndk/ldrtypes.h
trunk/reactos/include/psdk/winnt.h
trunk/reactos/ntoskrnl/cc/pin.c
trunk/reactos/ntoskrnl/fs/context.c
trunk/reactos/ntoskrnl/include/internal/ex.h
trunk/reactos/ntoskrnl/include/internal/i386/intrin_i.h
trunk/reactos/ntoskrnl/include/internal/ob.h
trunk/reactos/ntoskrnl/io/iomgr/bootlog.c
trunk/reactos/ntoskrnl/kd/wrappers/gdbstub.c
trunk/reactos/ntoskrnl/ke/i386/kiinit.c
trunk/reactos/ntoskrnl/ke/i386/ldt.c
trunk/reactos/ntoskrnl/mm/i386/page.c
trunk/reactos/ntoskrnl/mm/iospace.c
trunk/reactos/ntoskrnl/mm/pool.c
trunk/reactos/ntoskrnl/ob/obref.c
trunk/reactos/ntoskrnl/se/lsa.c
trunk/reactos/ntoskrnl/se/token.c
Modified: trunk/reactos/include/ddk/ntifs.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/ddk/ntifs.h?rev=24…
==============================================================================
--- trunk/reactos/include/ddk/ntifs.h (original)
+++ trunk/reactos/include/ddk/ntifs.h Wed Oct 25 22:23:45 2006
@@ -70,6 +70,30 @@
extern LARGE_INTEGER IoReadTransferCount;
extern LARGE_INTEGER IoWriteTransferCount;
extern LARGE_INTEGER IoOtherTransferCount;
+
+typedef STRING LSA_STRING, *PLSA_STRING;
+typedef ULONG LSA_OPERATIONAL_MODE, *PLSA_OPERATIONAL_MODE;
+
+typedef enum _SECURITY_LOGON_TYPE
+{
+ UndefinedLogonType = 0,
+ Interactive = 2,
+ Network,
+ Batch,
+ Service,
+ Proxy,
+ Unlock,
+ NetworkCleartext,
+ NewCredentials,
+#if (_WIN32_WINNT >= 0x0501)
+ RemoteInteractive,
+ CachedInteractive,
+#endif
+#if (_WIN32_WINNT >= 0x0502)
+ CachedRemoteInteractive,
+ CachedUnlock
+#endif
+} SECURITY_LOGON_TYPE, *PSECURITY_LOGON_TYPE;
#define ANSI_DOS_STAR ('<')
#define ANSI_DOS_QM ('>')
@@ -378,6 +402,7 @@
#define TOKEN_HAS_BACKUP_PRIVILEGE 0x02
#define TOKEN_HAS_RESTORE_PRIVILEGE 0x04
#define TOKEN_HAS_ADMIN_GROUP 0x08
+#define TOKEN_WRITE_RESTRICTED 0x08
#define TOKEN_IS_RESTRICTED 0x10
#define VACB_MAPPING_GRANULARITY (0x40000)
@@ -1993,7 +2018,7 @@
IN PFILE_OBJECT FileObject,
IN PLARGE_INTEGER FileOffset,
IN ULONG Length,
- IN BOOLEAN Wait,
+ IN ULONG Flags,
OUT PVOID *Bcb,
OUT PVOID *Buffer
);
@@ -2026,6 +2051,8 @@
IN PMDL MdlChain
);
+#define MAP_WAIT 1
+
NTKERNELAPI
BOOLEAN
NTAPI
@@ -2033,11 +2060,7 @@
IN PFILE_OBJECT FileObject,
IN PLARGE_INTEGER FileOffset,
IN ULONG Length,
-#if (VER_PRODUCTBUILD >= 2195)
IN ULONG Flags,
-#else
- IN BOOLEAN Wait,
-#endif
IN OUT PVOID *Bcb
);
@@ -2048,11 +2071,7 @@
IN PFILE_OBJECT FileObject,
IN PLARGE_INTEGER FileOffset,
IN ULONG Length,
-#if (VER_PRODUCTBUILD >= 2195)
IN ULONG Flags,
-#else
- IN BOOLEAN Wait,
-#endif
OUT PVOID *Bcb,
OUT PVOID *Buffer
);
@@ -2076,11 +2095,7 @@
IN PLARGE_INTEGER FileOffset,
IN ULONG Length,
IN BOOLEAN Zero,
-#if (VER_PRODUCTBUILD >= 2195)
IN ULONG Flags,
-#else
- IN BOOLEAN Wait,
-#endif
OUT PVOID *Bcb,
OUT PVOID *Buffer
);
Modified: trunk/reactos/include/ndk/iotypes.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/ndk/iotypes.h?rev=…
==============================================================================
--- trunk/reactos/include/ndk/iotypes.h (original)
+++ trunk/reactos/include/ndk/iotypes.h Wed Oct 25 22:23:45 2006
@@ -187,12 +187,17 @@
#define DNUF_NOT_DISABLEABLE 0x0008
//
+// Internal Option Flags
+//
+#define IO_ATTACH_DEVICE_API 0x80000000
+
+//
// Undocumented WMI Registration Flags
//
-#define WMIREG_FLAG_TRACE_PROVIDER 0x00010000
-#define WMIREG_FLAG_TRACE_NOTIFY_MASK 0x00F00000
-#define WMIREG_NOTIFY_DISK_IO 0x00100000
-#define WMIREG_NOTIFY_TDI_IO 0x00200000
+#define WMIREG_FLAG_TRACE_PROVIDER 0x00010000
+#define WMIREG_FLAG_TRACE_NOTIFY_MASK 0x00F00000
+#define WMIREG_NOTIFY_DISK_IO 0x00100000
+#define WMIREG_NOTIFY_TDI_IO 0x00200000
//
// I/O Completion Information Class for NtQueryIoCompletionInformation
Modified: trunk/reactos/include/ndk/ldrtypes.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/ndk/ldrtypes.h?rev…
==============================================================================
--- trunk/reactos/include/ndk/ldrtypes.h (original)
+++ trunk/reactos/include/ndk/ldrtypes.h Wed Oct 25 22:23:45 2006
@@ -66,6 +66,11 @@
//
#define LDR_LOCK_LOADER_LOCK_FLAG_RAISE_STATUS 0x00000001
#define LDR_LOCK_LOADER_LOCK_FLAG_TRY_ONLY 0x00000002
+
+//
+// FIXME: THIS SHOULD *NOT* BE USED!
+//
+#define IMAGE_SCN_TYPE_NOLOAD 0x00000002
//
// Loader Data stored in the PEB
Modified: trunk/reactos/include/psdk/winnt.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/psdk/winnt.h?rev=2…
==============================================================================
--- trunk/reactos/include/psdk/winnt.h (original)
+++ trunk/reactos/include/psdk/winnt.h Wed Oct 25 22:23:45 2006
@@ -1130,7 +1130,7 @@
#define IMAGE_DIRECTORY_ENTRY_COM_DESCRIPTOR 14
#define IMAGE_SCN_TYPE_REG 0
#define IMAGE_SCN_TYPE_DSECT 1
-#define IMAGE_SCN_TYPE_NOLOAD 2
+//#define IMAGE_SCN_TYPE_NOLOAD 2
#define IMAGE_SCN_TYPE_GROUP 4
#define IMAGE_SCN_TYPE_NO_PAD 8
#define IMAGE_SCN_CNT_CODE 32
Modified: trunk/reactos/ntoskrnl/cc/pin.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/cc/pin.c?rev=2465…
==============================================================================
--- trunk/reactos/ntoskrnl/cc/pin.c (original)
+++ trunk/reactos/ntoskrnl/cc/pin.c Wed Oct 25 22:23:45 2006
@@ -27,7 +27,7 @@
CcMapData (IN PFILE_OBJECT FileObject,
IN PLARGE_INTEGER FileOffset,
IN ULONG Length,
- IN BOOLEAN Wait,
+ IN ULONG Flags,
OUT PVOID *pBcb,
OUT PVOID *pBuffer)
{
@@ -39,9 +39,9 @@
PINTERNAL_BCB iBcb;
ULONG ROffset;
- DPRINT("CcMapData(FileObject 0x%p, FileOffset %I64x, Length %d, Wait %d,"
+ DPRINT("CcMapData(FileObject 0x%p, FileOffset %I64x, Length %d, Flags %d,"
" pBcb 0x%p, pBuffer 0x%p)\n", FileObject, FileOffset->QuadPart,
- Length, Wait, pBcb, pBuffer);
+ Length, Flags, pBcb, pBuffer);
ReadOffset = (ULONG)FileOffset->QuadPart;
Bcb = FileObject->SectionObjectPointer->SharedCacheMap;
@@ -67,7 +67,7 @@
}
if (!Valid)
{
- if (!Wait)
+ if (!(Flags & MAP_WAIT))
{
CcRosReleaseCacheSegment(Bcb, CacheSeg, FALSE, FALSE, FALSE);
return(FALSE);
Modified: trunk/reactos/ntoskrnl/fs/context.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/fs/context.c?rev=…
==============================================================================
--- trunk/reactos/ntoskrnl/fs/context.c (original)
+++ trunk/reactos/ntoskrnl/fs/context.c Wed Oct 25 22:23:45 2006
@@ -62,7 +62,7 @@
*/
PFSRTL_PER_FILEOBJECT_CONTEXT
NTAPI
-FsRtlRemovePerFileObjectContext(IN PFSRTL_ADVANCED_FCB_HEADER PerFileObjectContext,
+FsRtlRemovePerFileObjectContext(IN PFILE_OBJECT PerFileObjectContext,
IN PVOID OwnerId OPTIONAL,
IN PVOID InstanceId OPTIONAL)
{
Modified: trunk/reactos/ntoskrnl/include/internal/ex.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/include/internal/…
==============================================================================
--- trunk/reactos/ntoskrnl/include/internal/ex.h (original)
+++ trunk/reactos/ntoskrnl/include/internal/ex.h Wed Oct 25 22:23:45 2006
@@ -514,10 +514,10 @@
*--*/
VOID
FORCEINLINE
-ExInitializePushLock(IN PEX_PUSH_LOCK PushLock)
+ExInitializePushLock(IN PULONG_PTR PushLock)
{
/* Set the value to 0 */
- PushLock->Value = 0;
+ *PushLock = 0;
}
/*++
Modified: trunk/reactos/ntoskrnl/include/internal/i386/intrin_i.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/include/internal/…
==============================================================================
--- trunk/reactos/ntoskrnl/include/internal/i386/intrin_i.h (original)
+++ trunk/reactos/ntoskrnl/include/internal/i386/intrin_i.h Wed Oct 25 22:23:45 2006
@@ -39,6 +39,13 @@
: /* no outputs */ \
: "q" (X));
+#define Ke386SetTr(X) __asm__ __volatile__("ltr %%ax" :
:"a" (X));
+
+#define Ke386GetTr(X) \
+ __asm__("str %0\n\t" \
+ : /* no outputs */ \
+ : "m" (X));
+
#define Ke386SaveFlags(x) __asm__ __volatile__("pushfl ; popl
%0":"=g" (x): /* no input */)
#define Ke386RestoreFlags(x) __asm__ __volatile__("pushl %0 ; popfl": /* no
output */ :"g" (x):"memory")
@@ -58,8 +65,6 @@
#define _Ke386SetDr(N,X) __asm__ __volatile__("movl %0,%%dr" #N :
:"r" (X));
-#define Ke386SetTr(X) __asm__ __volatile__("ltr %%ax" : :"a"
(X));
-#define Ke386GetTr(X) __asm__ __volatile__("str %%ax" : :"a"
(X));
static inline void Ki386Cpuid(ULONG Op, PULONG Eax, PULONG Ebx, PULONG Ecx, PULONG Edx)
{
@@ -69,25 +74,11 @@
}
#define Ke386Rdmsr(msr,val1,val2) __asm__ __volatile__("rdmsr" : "=a"
(val1), "=d" (val2) : "c" (msr))
-
#define Ke386Wrmsr(msr,val1,val2) __asm__ __volatile__("wrmsr" : /* no outputs
*/ : "c" (msr), "a" (val1), "d" (val2))
-#define FLUSH_TLB { \
- unsigned int tmp; \
- __asm__ __volatile__( \
- "movl %%cr3,%0\n\t" \
- "movl %0,%%cr3\n\t" \
- : "=r" (tmp) \
- :: "memory"); \
-}
-
-#define FLUSH_TLB_ONE(addr) __asm__ __volatile__( \
- "invlpg %0" \
- : \
- : "m" (*(volatile long *) (addr)))
-
-#define Ke386HaltProcessor() __asm__("hlt\n\t");
-#define Ke386FnInit() __asm__("fninit\n\t");
+#define Ke386HaltProcessor() __asm__("hlt\n\t");
+
+#define Ke386FnInit() __asm__("fninit\n\t");
//
// DR Macros
Modified: trunk/reactos/ntoskrnl/include/internal/ob.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/include/internal/…
==============================================================================
--- trunk/reactos/ntoskrnl/include/internal/ob.h (original)
+++ trunk/reactos/ntoskrnl/include/internal/ob.h Wed Oct 25 22:23:45 2006
@@ -197,14 +197,14 @@
FASTCALL
ObDereferenceObjectEx(
IN PVOID Object,
- IN ULONG Count
+ IN LONG Count
);
LONG
FASTCALL
ObReferenceObjectEx(
IN PVOID Object,
- IN ULONG Count
+ IN LONG Count
);
BOOLEAN
Modified: trunk/reactos/ntoskrnl/io/iomgr/bootlog.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/io/iomgr/bootlog.…
==============================================================================
--- trunk/reactos/ntoskrnl/io/iomgr/bootlog.c (original)
+++ trunk/reactos/ntoskrnl/io/iomgr/bootlog.c Wed Oct 25 22:23:45 2006
@@ -314,11 +314,9 @@
ExReleaseResourceLite(&IopBootLogResource);
return;
}
-#if defined (__GNUC__)
- Status = IopWriteLogFile(L"ReactOS "KERNEL_VERSION_STR);
-#elif defined (_MSC_VER)
- Status = IopWriteLogFile("ReactOS "KERNEL_VERSION_STR);
-#endif
+
+ //Status = IopWriteLogFile(L"ReactOS "KERNEL_VERSION_STR);
+
if (!NT_SUCCESS(Status))
{
DPRINT1("IopWriteLogFile() failed (Status %lx)\n", Status);
Modified: trunk/reactos/ntoskrnl/kd/wrappers/gdbstub.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/kd/wrappers/gdbst…
==============================================================================
--- trunk/reactos/ntoskrnl/kd/wrappers/gdbstub.c (original)
+++ trunk/reactos/ntoskrnl/kd/wrappers/gdbstub.c Wed Oct 25 22:23:45 2006
@@ -1331,7 +1331,7 @@
DPRINT("Thread %p acquired mutex\n", PsGetCurrentThread());
/* Disable hardware debugging while we are inside the stub */
- _Ke386SetDr(7, 0);
+ Ke386SetDr7(0);
GspUnloadBreakpoints(TrapFrame);
/* Make sure we're debugging the current thread. */
Modified: trunk/reactos/ntoskrnl/ke/i386/kiinit.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ke/i386/kiinit.c?…
==============================================================================
--- trunk/reactos/ntoskrnl/ke/i386/kiinit.c (original)
+++ trunk/reactos/ntoskrnl/ke/i386/kiinit.c Wed Oct 25 22:23:45 2006
@@ -525,7 +525,7 @@
*Idt = (PKIDTENTRY)IdtDescriptor.Base;
/* Get TSS and FS Selectors */
- Ke386GetTr(&Tr);
+ Ke386GetTr(Tr);
if (Tr != KGDT_TSS) Tr = KGDT_TSS; // FIXME: HACKHACK
Fs = Ke386GetFs();
Modified: trunk/reactos/ntoskrnl/ke/i386/ldt.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ke/i386/ldt.c?rev…
==============================================================================
--- trunk/reactos/ntoskrnl/ke/i386/ldt.c (original)
+++ trunk/reactos/ntoskrnl/ke/i386/ldt.c Wed Oct 25 22:23:45 2006
@@ -33,7 +33,7 @@
KeAcquireSpinLock(&GdtLock, &oldIrql);
- Gdt = KeGetPcr()->GDT;
+ Gdt = (PUSHORT)KeGetPcr()->GDT;
Entry = (Entry & (~0x3)) / 2;
Gdt[Entry + 1] = (USHORT)(((ULONG)Base) & 0xffff);
Modified: trunk/reactos/ntoskrnl/mm/i386/page.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/mm/i386/page.c?re…
==============================================================================
--- trunk/reactos/ntoskrnl/mm/i386/page.c (original)
+++ trunk/reactos/ntoskrnl/mm/i386/page.c Wed Oct 25 22:23:45 2006
@@ -85,11 +85,11 @@
}
else if (Address == (PVOID)0xfffffffe)
{
- FLUSH_TLB;
- }
- else
- {
- FLUSH_TLB_ONE(Address);
+ KeFlushCurrentTb();
+ }
+ else
+ {
+ __invlpg(Address);
}
}
@@ -112,7 +112,7 @@
#else
if ((Pt && MmUnmapPageTable(Pt)) || Address >= MmSystemRangeStart)
{
- FLUSH_TLB_ONE(Address);
+ __invlpg(Address);
}
#endif
}
@@ -2220,7 +2220,7 @@
}
}
Address = (PVOID)((ULONG_PTR)HYPERSPACE + i * PAGE_SIZE);
- FLUSH_TLB_ONE(Address);
+ __invlpg(Address);
return Address;
}
@@ -2242,7 +2242,7 @@
Entry = InterlockedExchange((PLONG)ADDR_TO_PTE(Address), PFN_TO_PTE(NewPage) |
PA_PRESENT | PA_READWRITE);
Pfn = PTE_TO_PFN(Entry);
}
- FLUSH_TLB_ONE(Address);
+ __invlpg(Address);
return Pfn;
}
@@ -2264,7 +2264,7 @@
Entry = InterlockedExchange((PLONG)ADDR_TO_PTE(Address), 0);
Pfn = PTE_TO_PFN(Entry);
}
- FLUSH_TLB_ONE(Address);
+ __invlpg(Address);
return Pfn;
}
Modified: trunk/reactos/ntoskrnl/mm/iospace.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/mm/iospace.c?rev=…
==============================================================================
--- trunk/reactos/ntoskrnl/mm/iospace.c (original)
+++ trunk/reactos/ntoskrnl/mm/iospace.c Wed Oct 25 22:23:45 2006
@@ -140,7 +140,7 @@
MmUnmapIoSpace (IN PVOID BaseAddress,
IN ULONG NumberOfBytes)
{
- ULONG Offset;
+ LONG Offset;
PVOID Address = BaseAddress;
Offset = (ULONG_PTR)Address % PAGE_SIZE;
Modified: trunk/reactos/ntoskrnl/mm/pool.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/mm/pool.c?rev=246…
==============================================================================
--- trunk/reactos/ntoskrnl/mm/pool.c (original)
+++ trunk/reactos/ntoskrnl/mm/pool.c Wed Oct 25 22:23:45 2006
@@ -161,41 +161,51 @@
return ExAllocatePoolWithTag(PoolType, NumberOfBytes, Tag);
}
-/*
- * @implemented
- */
-PVOID STDCALL
+_SEH_DEFINE_LOCALS(ExQuotaPoolVars)
+{
+ PVOID Block;
+};
+
+_SEH_FILTER(FreeAndGoOn)
+{
+ _SEH_ACCESS_LOCALS(ExQuotaPoolVars);
+
+ /* Couldn't charge, so free the pool and let the caller SEH manage */
+ ExFreePool(_SEH_VAR(Block));
+ return EXCEPTION_CONTINUE_SEARCH;
+}
+
+/*
+ * @implemented
+ */
+PVOID
+NTAPI
ExAllocatePoolWithQuotaTag (IN POOL_TYPE PoolType,
- IN ULONG NumberOfBytes,
- IN ULONG Tag)
-{
- PVOID Block;
+ IN ULONG NumberOfBytes,
+ IN ULONG Tag)
+{
PEPROCESS Process;
+ _SEH_DECLARE_LOCALS(ExQuotaPoolVars);
/* Allocate the Pool First */
- Block = EiAllocatePool(PoolType,
- NumberOfBytes,
- Tag,
- &ExAllocatePoolWithQuotaTag);
+ _SEH_VAR(Block) = EiAllocatePool(PoolType,
+ NumberOfBytes,
+ Tag,
+ &ExAllocatePoolWithQuotaTag);
/* "Quota is not charged to the thread for allocations >= PAGE_SIZE" -
OSR Docs */
- if (!(NumberOfBytes >= PAGE_SIZE)) {
-
+ if (!(NumberOfBytes >= PAGE_SIZE))
+ {
/* Get the Current Process */
Process = PsGetCurrentProcess();
/* PsChargePoolQuota returns an exception, so this needs SEH */
- _SEH_FILTER(FreeAndGoOn)
- {
- /* Couldn't charge, so free the pool and let the caller SEH manage */
- ExFreePool(Block);
- return EXCEPTION_CONTINUE_SEARCH;
- }
-
_SEH_TRY
{
- //* FIXME: Is there a way to get the actual Pool size allocated from the pool
header? */
- PsChargePoolQuota(Process, PoolType & PAGED_POOL_MASK, NumberOfBytes);
+ /* FIXME: Is there a way to get the actual Pool size allocated from the pool
header? */
+ PsChargePoolQuota(Process,
+ PoolType & PAGED_POOL_MASK,
+ NumberOfBytes);
}
_SEH_EXCEPT(FreeAndGoOn)
{
@@ -205,7 +215,8 @@
_SEH_END;
}
- return Block;
+ /* Return the allocated block */
+ return _SEH_VAR(Block);
}
/*
Modified: trunk/reactos/ntoskrnl/ob/obref.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ob/obref.c?rev=24…
==============================================================================
--- trunk/reactos/ntoskrnl/ob/obref.c (original)
+++ trunk/reactos/ntoskrnl/ob/obref.c Wed Oct 25 22:23:45 2006
@@ -70,7 +70,7 @@
LONG
FASTCALL
ObReferenceObjectEx(IN PVOID Object,
- IN ULONG Count)
+ IN LONG Count)
{
/* Increment the reference count and return the count now */
return InterlockedExchangeAdd(&OBJECT_TO_OBJECT_HEADER(Object)->
@@ -81,10 +81,10 @@
LONG
FASTCALL
ObDereferenceObjectEx(IN PVOID Object,
- IN ULONG Count)
+ IN LONG Count)
{
POBJECT_HEADER Header;
- ULONG NewCount;
+ LONG NewCount;
/* Extract the object header */
Header = OBJECT_TO_OBJECT_HEADER(Object);
Modified: trunk/reactos/ntoskrnl/se/lsa.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/se/lsa.c?rev=2465…
==============================================================================
--- trunk/reactos/ntoskrnl/se/lsa.c (original)
+++ trunk/reactos/ntoskrnl/se/lsa.c Wed Oct 25 22:23:45 2006
@@ -12,7 +12,6 @@
#define NDEBUG
#include <internal/debug.h>
-/* LsaCallAuthenticationPackage@28 */
/*
* @unimplemented
*/
@@ -29,7 +28,6 @@
return STATUS_NOT_IMPLEMENTED;
}
-/* LsaDeregisterLogonProcess@8 */
/*
* @unimplemented
*/
@@ -41,7 +39,6 @@
return STATUS_NOT_IMPLEMENTED;
}
-/* LsaFreeReturnBuffer@4 */
/*
* @implemented
*/
@@ -57,31 +54,29 @@
);
}
-/* LsaLogonUser@56 */
/*
* @unimplemented
*/
-NTSTATUS STDCALL LsaLogonUser (
- ULONG Unknown0,
- ULONG Unknown1,
- ULONG Unknown2,
- ULONG Unknown3,
- ULONG Unknown4,
- ULONG Unknown5,
- ULONG Unknown6,
- ULONG Unknown7,
- ULONG Unknown8,
- ULONG Unknown9,
- ULONG Unknown10,
- ULONG Unknown11,
- ULONG Unknown12,
- ULONG Unknown13
- )
+NTSTATUS
+NTAPI
+LsaLogonUser(IN HANDLE LsaHandle,
+ IN PLSA_STRING OriginName,
+ IN SECURITY_LOGON_TYPE LogonType,
+ IN ULONG AuthenticationPackage,
+ IN PVOID AuthenticationInformation,
+ IN ULONG AuthenticationInformationLength,
+ IN PTOKEN_GROUPS LocalGroups OPTIONAL,
+ IN PTOKEN_SOURCE SourceContext,
+ OUT PVOID *ProfileBuffer,
+ OUT PULONG ProfileBufferLength,
+ OUT PLUID LogonId,
+ OUT PHANDLE Token,
+ OUT PQUOTA_LIMITS Quotas,
+ OUT PNTSTATUS SubStatus)
{
return STATUS_NOT_IMPLEMENTED;
}
-/* LsaLookupAuthenticationPackage@12 */
/*
* @unimplemented
*/
@@ -94,15 +89,14 @@
return STATUS_NOT_IMPLEMENTED;
}
-/* LsaRegisterLogonProcess@12 */
/*
* @unimplemented
*/
-NTSTATUS STDCALL LsaRegisterLogonProcess (
- ULONG Unknown0,
- ULONG Unknown1,
- ULONG Unknown2
- )
+NTSTATUS
+NTAPI
+LsaRegisterLogonProcess (IN PLSA_STRING LogonProcessName,
+ OUT PHANDLE LsaHandle,
+ OUT PLSA_OPERATIONAL_MODE SecurityMode)
{
return STATUS_NOT_IMPLEMENTED;
}
Modified: trunk/reactos/ntoskrnl/se/token.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/se/token.c?rev=24…
==============================================================================
--- trunk/reactos/ntoskrnl/se/token.c (original)
+++ trunk/reactos/ntoskrnl/se/token.c Wed Oct 25 22:23:45 2006
@@ -2415,7 +2415,7 @@
)
{
PAGED_CODE();
- return (((PTOKEN)Token)->TokenFlags & TOKEN_HAS_ADMIN_GROUP) != 0;
+ return (((PTOKEN)Token)->TokenFlags & TOKEN_WRITE_RESTRICTED) != 0;
}
/*