- Make the NDK compatible with the MSDDK again.
- Fix some w32api incompatibility cruft since w32api insists on
including winnt.h from kernel-mode.
- Fix some stuff that was including both kernel-mode and user-mode
headers together.
- Use PISECURITY_DESCRIPTOR, not PSECURITY_DESCRIPTOR.
Modified: trunk/reactos/drivers/multimedia/portcls/portcls.c
Modified: trunk/reactos/drivers/multimedia/portcls/portcls.h
Modified: trunk/reactos/drivers/net/afd/include/afd.h
Modified: trunk/reactos/drivers/net/wshtcpip/wshtcpip.h
Modified: trunk/reactos/drivers/video/displays/vga/vgaddi.h
Modified: trunk/reactos/include/arc/arc.h
Modified: trunk/reactos/include/ndk/cmfuncs.h
Modified: trunk/reactos/include/ndk/exfuncs.h
Modified: trunk/reactos/include/ndk/haltypes.h
Modified: trunk/reactos/include/ndk/i386/ketypes.h
Modified: trunk/reactos/include/ndk/ifssupp.h
Modified: trunk/reactos/include/ndk/iofuncs.h
Modified: trunk/reactos/include/ndk/ketypes.h
Modified: trunk/reactos/include/ndk/mmfuncs.h
Modified: trunk/reactos/include/ndk/obfuncs.h
Modified: trunk/reactos/include/ndk/obtypes.h
Modified: trunk/reactos/include/ndk/rtlfuncs.h
Modified: trunk/reactos/include/ndk/rtltypes.h
Modified: trunk/reactos/include/ndk/setypes.h
Modified: trunk/reactos/lib/hid/precomp.h
Modified: trunk/reactos/lib/rtl/bootdata.c
Modified: trunk/reactos/ntoskrnl/cm/regobj.c
Modified: trunk/reactos/ntoskrnl/include/ntoskrnl.h
Modified: trunk/reactos/ntoskrnl/ob/security.c
Modified: trunk/reactos/ntoskrnl/se/sd.c
Modified: trunk/reactos/ntoskrnl/se/semgr.c
Modified: trunk/reactos/w32api/include/ddk/ntifs.h
Modified: trunk/reactos/w32api/include/ddk/winddk.h
Modified: trunk/reactos/w32api/include/winnt.h
_____
Modified: trunk/reactos/drivers/multimedia/portcls/portcls.c
--- trunk/reactos/drivers/multimedia/portcls/portcls.c 2005-11-28
21:28:12 UTC (rev 19725)
+++ trunk/reactos/drivers/multimedia/portcls/portcls.c 2005-11-28
21:40:21 UTC (rev 19726)
@@ -25,8 +25,6 @@
* REVISION HISTORY:
* 21 November 2005 Created James Tabor
*/
-#include <ddk/ntddk.h>
-#include <windows.h>
#include "portcls.h"
_____
Modified: trunk/reactos/drivers/multimedia/portcls/portcls.h
--- trunk/reactos/drivers/multimedia/portcls/portcls.h 2005-11-28
21:28:12 UTC (rev 19725)
+++ trunk/reactos/drivers/multimedia/portcls/portcls.h 2005-11-28
21:40:21 UTC (rev 19726)
@@ -13,7 +13,6 @@
extern "C" {
#endif
-#include <windef.h>
#include <ddk/ntddk.h>
#define PORTCLASSAPI extern
_____
Modified: trunk/reactos/drivers/net/afd/include/afd.h
--- trunk/reactos/drivers/net/afd/include/afd.h 2005-11-28 21:28:12 UTC
(rev 19725)
+++ trunk/reactos/drivers/net/afd/include/afd.h 2005-11-28 21:40:21 UTC
(rev 19726)
@@ -17,6 +17,8 @@
#include <tdikrnl.h>
#include <tdiinfo.h>
#include <string.h>
+#define _WINBASE_
+#define _WINDOWS_H
#include <winsock2.h>
#include <afd/shared.h>
_____
Modified: trunk/reactos/drivers/net/wshtcpip/wshtcpip.h
--- trunk/reactos/drivers/net/wshtcpip/wshtcpip.h 2005-11-28
21:28:12 UTC (rev 19725)
+++ trunk/reactos/drivers/net/wshtcpip/wshtcpip.h 2005-11-28
21:40:21 UTC (rev 19726)
@@ -7,7 +7,9 @@
#ifndef __WSHTCPIP_H
#define __WSHTCPIP_H
-#include <ddk/ntddk.h>
+#define WIN32_NO_STATUS
+#include <windows.h>
+#include <rtlfuncs.h>
#include <wsahelp.h>
#define EXPORT STDCALL
_____
Modified: trunk/reactos/drivers/video/displays/vga/vgaddi.h
--- trunk/reactos/drivers/video/displays/vga/vgaddi.h 2005-11-28
21:28:12 UTC (rev 19725)
+++ trunk/reactos/drivers/video/displays/vga/vgaddi.h 2005-11-28
21:40:21 UTC (rev 19726)
@@ -1,3 +1,5 @@
+#define _WINBASE_
+#define _WINDOWS_H
#include <windef.h>
#include <wingdi.h>
#include <ddk/ntddk.h>
_____
Modified: trunk/reactos/include/arc/arc.h
--- trunk/reactos/include/arc/arc.h 2005-11-28 21:28:12 UTC (rev
19725)
+++ trunk/reactos/include/arc/arc.h 2005-11-28 21:40:21 UTC (rev
19726)
@@ -42,4 +42,17 @@
LPSTR Identifier;
} CONFIGURATION_COMPONENT, *PCONFIGURATION_COMPONENT;
+typedef struct _CONFIGURATION_COMPONENT_DATA
+{
+ struct _CONFIGURATION_COMPONENT_DATA *Parent;
+ struct _CONFIGURATION_COMPONENT_DATA *Child;
+ struct _CONFIGURATION_COMPONENT_DATA *Sibling;
+ CONFIGURATION_COMPONENT Component;
+} CONFIGURATION_COMPONENT_DATA, *PCONFIGURATION_COMPONENT_DATA;
+
+typedef struct _ARC_DISK_INFORMATION
+{
+ LIST_ENTRY DiskSignatureListHead;
+} ARC_DISK_INFORMATION, *PARC_DISK_INFORMATION;
+
#endif
_____
Modified: trunk/reactos/include/ndk/cmfuncs.h
--- trunk/reactos/include/ndk/cmfuncs.h 2005-11-28 21:28:12 UTC (rev
19725)
+++ trunk/reactos/include/ndk/cmfuncs.h 2005-11-28 21:40:21 UTC (rev
19726)
@@ -230,6 +230,7 @@
IN POBJECT_ATTRIBUTES KeyObjectAttributes
);
+#ifdef NTOS_MODE_USER
NTSTATUS
NTAPI
ZwCreateKey(
@@ -242,6 +243,7 @@
IN PULONG Disposition OPTIONAL
);
+
NTSTATUS
NTAPI
ZwDeleteKey(
@@ -426,6 +428,7 @@
IN PVOID Data,
IN ULONG DataSize
);
+#endif
NTSTATUS
NTAPI
_____
Modified: trunk/reactos/include/ndk/exfuncs.h
--- trunk/reactos/include/ndk/exfuncs.h 2005-11-28 21:28:12 UTC (rev
19725)
+++ trunk/reactos/include/ndk/exfuncs.h 2005-11-28 21:40:21 UTC (rev
19726)
@@ -417,12 +417,14 @@
IN OUT PRTL_ATOM Atom
);
+#ifdef NTOS_MODE_USER
NTSTATUS
NTAPI
ZwCancelTimer(
IN HANDLE TimerHandle,
OUT PBOOLEAN CurrentState OPTIONAL
);
+#endif
NTSTATUS
NTAPI
@@ -467,6 +469,7 @@
IN LONG MaximumCount
);
+#ifdef NTOS_MODE_USER
NTSTATUS
NTAPI
ZwCreateTimer(
@@ -475,6 +478,7 @@
IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL,
IN TIMER_TYPE TimerType
);
+#endif
NTSTATUS
NTAPI
@@ -528,6 +532,7 @@
IN POBJECT_ATTRIBUTES ObjectAttributes
);
+#ifdef NTOS_MODE_USER
NTSTATUS
NTAPI
ZwOpenTimer(
@@ -535,6 +540,7 @@
IN ACCESS_MASK DesiredAccess,
IN POBJECT_ATTRIBUTES ObjectAttributes
);
+#endif
NTSTATUS
NTAPI
@@ -728,6 +734,7 @@
IN ULONG SystemInformationLength
);
+#ifdef NTOS_MODE_USER
NTSTATUS
NTAPI
ZwSetTimer(
@@ -739,6 +746,7 @@
IN LONG Period OPTIONAL,
OUT PBOOLEAN PreviousState OPTIONAL
);
+#endif
NTSTATUS
NTAPI
_____
Modified: trunk/reactos/include/ndk/haltypes.h
--- trunk/reactos/include/ndk/haltypes.h 2005-11-28 21:28:12 UTC
(rev 19725)
+++ trunk/reactos/include/ndk/haltypes.h 2005-11-28 21:40:21 UTC
(rev 19726)
@@ -87,8 +87,8 @@
USHORT DockData1;
USHORT DockData2;
USHORT DockData3;
- ULONG DockData3;
ULONG DockData4;
+ ULONG DockData5;
} PROFILE_PARAMETER_BLOCK, *PPROFILE_PARAMETER_BLOCK;
typedef struct _HEADLESS_LOADER_BLOCK
_____
Modified: trunk/reactos/include/ndk/i386/ketypes.h
--- trunk/reactos/include/ndk/i386/ketypes.h 2005-11-28 21:28:12 UTC
(rev 19725)
+++ trunk/reactos/include/ndk/i386/ketypes.h 2005-11-28 21:40:21 UTC
(rev 19726)
@@ -86,7 +86,7 @@
} FX_SAVE_AREA, *PFX_SAVE_AREA;
//
-// FIXME: Trap Frame Definition
+// Trap Frame Definition
//
typedef struct _KTRAP_FRAME
{
_____
Modified: trunk/reactos/include/ndk/ifssupp.h
--- trunk/reactos/include/ndk/ifssupp.h 2005-11-28 21:28:12 UTC (rev
19725)
+++ trunk/reactos/include/ndk/ifssupp.h 2005-11-28 21:40:21 UTC (rev
19726)
@@ -19,7 +19,16 @@
#ifndef NTOS_MODE_USER
#define _NTIFS_
+#define TOKEN_SOURCE_LENGTH 8
+
+typedef enum _TOKEN_TYPE
+{
+ TokenPrimary = 1,
+ TokenImpersonation
+} TOKEN_TYPE, *PTOKEN_TYPE;
+
typedef PVOID PRTL_HEAP_PARAMETERS;
+typedef USHORT SECURITY_DESCRIPTOR_CONTROL,
*PSECURITY_DESCRIPTOR_CONTROL;
typedef struct _RTL_SPLAY_LINKS
{
@@ -93,7 +102,7 @@
typedef struct _KAPC_STATE
{
LIST_ENTRY ApcListHead[2];
- PKPROCESS Process;
+ struct _KPROCESS *Process;
BOOLEAN KernelApcInProgress;
BOOLEAN KernelApcPending;
BOOLEAN UserApcPending;
@@ -108,9 +117,40 @@
LIST_ENTRY ThreadListHead;
} KQUEUE, *PKQUEUE, *RESTRICTED_POINTER PRKQUEUE;
-typedef PVOID EX_RUNDOWN_REF;
typedef PVOID EX_PUSH_LOCK;
+typedef enum _RTL_GENERIC_COMPARE_RESULTS
+{
+ GenericLessThan,
+ GenericGreaterThan,
+ GenericEqual
+} RTL_GENERIC_COMPARE_RESULTS;
+
+typedef struct _SID_IDENTIFIER_AUTHORITY
+{
+ UCHAR Value[6];
+} SID_IDENTIFIER_AUTHORITY, *PSID_IDENTIFIER_AUTHORITY;
+
+typedef struct _SID_AND_ATTRIBUTES
+{
+ PSID Sid;
+ ULONG Attributes;
+} SID_AND_ATTRIBUTES, * PSID_AND_ATTRIBUTES;
+
+typedef struct _TOKEN_SOURCE
+{
+ CHAR SourceName[TOKEN_SOURCE_LENGTH];
+ LUID SourceIdentifier;
+} TOKEN_SOURCE, *PTOKEN_SOURCE;
+
+typedef struct _TOKEN_CONTROL
+{
+ LUID TokenId;
+ LUID AuthenticationId;
+ LUID ModifiedId;
+ TOKEN_SOURCE TokenSource;
+} TOKEN_CONTROL, *PTOKEN_CONTROL;
+
typedef struct _SECURITY_CLIENT_CONTEXT
{
SECURITY_QUALITY_OF_SERVICE SecurityQos;
@@ -121,12 +161,79 @@
TOKEN_CONTROL ClientTokenControl;
} SECURITY_CLIENT_CONTEXT, *PSECURITY_CLIENT_CONTEXT;
-typedef enum _RTL_GENERIC_COMPARE_RESULTS
+typedef struct _SECURITY_DESCRIPTOR_RELATIVE
{
- GenericLessThan,
- GenericGreaterThan,
- GenericEqual
-} RTL_GENERIC_COMPARE_RESULTS;
+ UCHAR Revision;
+ UCHAR Sbz1;
+ SECURITY_DESCRIPTOR_CONTROL Control;
+ ULONG Owner;
+ ULONG Group;
+ ULONG Sacl;
+ ULONG Dacl;
+} SECURITY_DESCRIPTOR_RELATIVE, *PISECURITY_DESCRIPTOR_RELATIVE;
+typedef struct _TOKEN_GROUPS
+{
+ ULONG GroupCount;
+ SID_AND_ATTRIBUTES Groups[ANYSIZE_ARRAY];
+} TOKEN_GROUPS, *PTOKEN_GROUPS;
+
+typedef struct _TOKEN_PRIVILEGES
+{
+ ULONG PrivilegeCount;
+ LUID_AND_ATTRIBUTES Privileges[ANYSIZE_ARRAY];
+} TOKEN_PRIVILEGES, *PTOKEN_PRIVILEGES;
+
+typedef struct _TOKEN_USER
+{
+ SID_AND_ATTRIBUTES User;
+} TOKEN_USER, *PTOKEN_USER;
+
+typedef enum _TOKEN_INFORMATION_CLASS
+{
+ TokenUser = 1,
+ TokenGroups,
+ TokenPrivileges,
+ TokenOwner,
+ TokenPrimaryGroup,
+ TokenDefaultDacl,
+ TokenSource,
+ TokenType,
+ TokenImpersonationLevel,
+ TokenStatistics,
+ TokenRestrictedSids,
+ TokenSessionId,
+ TokenGroupsAndPrivileges,
+ TokenSessionReference,
+ TokenSandBoxInert,
+ TokenAuditPolicy,
+ TokenOrigin,
+ TokenElevationType,
+ TokenLinkedToken,
+ TokenElevation,
+ TokenIsRestricted,
+ TokenAccessInformation,
+ TokenVirtualization,
+ TokenIntegrityLevel,
+ TokenIntegrityLevelDesktop,
+ TokenMandatoryPolicy,
+ MaxTokenInfoClass
+} TOKEN_INFORMATION_CLASS, *PTOKEN_INFORMATION_CLASS;
+
+typedef struct _TOKEN_OWNER
+{
+ PSID Owner;
+} TOKEN_OWNER, *PTOKEN_OWNER;
+
+typedef struct _TOKEN_PRIMARY_GROUP
+{
+ PSID PrimaryGroup;
+} TOKEN_PRIMARY_GROUP, *PTOKEN_PRIMARY_GROUP;
+
+typedef struct _TOKEN_DEFAULT_DACL
+{
+ PACL DefaultDacl;
+} TOKEN_DEFAULT_DACL, *PTOKEN_DEFAULT_DACL;
+
#endif // !NTOS_MODE_USER
#endif // _NTIFS_
_____
Modified: trunk/reactos/include/ndk/iofuncs.h
--- trunk/reactos/include/ndk/iofuncs.h 2005-11-28 21:28:12 UTC (rev
19725)
+++ trunk/reactos/include/ndk/iofuncs.h 2005-11-28 21:40:21 UTC (rev
19726)
@@ -617,11 +617,13 @@
IN ULONG OutputBufferSize
);
+#ifdef NTOS_MODE_USER
NTSTATUS
NTAPI
ZwLoadDriver(
IN PUNICODE_STRING DriverServiceName
);
+#endif
NTSYSCALLAPI
NTSTATUS
@@ -891,6 +893,7 @@
ULONG Unknown3
);
+NTSYSAPI
NTSTATUS
NTAPI
ZwUnloadDriver(
_____
Modified: trunk/reactos/include/ndk/ketypes.h
--- trunk/reactos/include/ndk/ketypes.h 2005-11-28 21:28:12 UTC (rev
19725)
+++ trunk/reactos/include/ndk/ketypes.h 2005-11-28 21:40:21 UTC (rev
19726)
@@ -339,17 +339,6 @@
#include <arch/ketypes.h>
//
-// ARC Component Data
-//
-typedef struct _CONFIGURATION_COMPONENT_DATA
-{
- struct _CONFIGURATION_COMPONENT_DATA *Parent;
- struct _CONFIGURATION_COMPONENT_DATA *Child;
- struct _CONFIGURATION_COMPONENT_DATA *Sibling;
- CONFIGURATION_COMPONENT Component;
-} CONFIGURATION_COMPONENT_DATA, *PCONFIGURATION_COMPONENT_DATA;
-
-//
// Kernel Memory Node
//
typedef struct _KNODE
@@ -374,7 +363,7 @@
CSHORT Type;
CSHORT Size;
LIST_ENTRY ProfileListEntry;
- PKPROCESS Process;
+ struct _KPROCESS *Process;
PVOID RangeBase;
PVOID RangeLimit;
ULONG BucketShift;
@@ -696,7 +685,7 @@
KEXECUTE_OPTIONS Flags; /* 06B */
ULONG StackCount; /* 06C */
LIST_ENTRY ProcessListEntry; /* 070 */
-} KPROCESS;
+} KPROCESS, *PKPROCESS;
//
// System Service Table Descriptor
_____
Modified: trunk/reactos/include/ndk/mmfuncs.h
--- trunk/reactos/include/ndk/mmfuncs.h 2005-11-28 21:28:12 UTC (rev
19725)
+++ trunk/reactos/include/ndk/mmfuncs.h 2005-11-28 21:40:21 UTC (rev
19726)
@@ -260,6 +260,7 @@
PULONG NumberOfBytesLocked
);
+NTSYSAPI
NTSTATUS
NTAPI
ZwMapViewOfSection(
@@ -275,6 +276,7 @@
IN ULONG AccessProtection
);
+NTSYSAPI
NTSTATUS
NTAPI
ZwOpenSection(
@@ -333,6 +335,7 @@
OUT PULONG NumberOfBytesUnlocked OPTIONAL
);
+NTSYSAPI
NTSTATUS
NTAPI
ZwUnmapViewOfSection(
_____
Modified: trunk/reactos/include/ndk/obfuncs.h
--- trunk/reactos/include/ndk/obfuncs.h 2005-11-28 21:28:12 UTC (rev
19725)
+++ trunk/reactos/include/ndk/obfuncs.h 2005-11-28 21:40:21 UTC (rev
19726)
@@ -269,6 +269,7 @@
IN BOOLEAN GenerateOnClose
);
+NTSYSAPI
NTSTATUS
NTAPI
ZwCreateDirectoryObject(
@@ -313,6 +314,7 @@
IN HANDLE Object
);
+NTSYSAPI
NTSTATUS
NTAPI
ZwMakeTemporaryObject(
@@ -335,6 +337,7 @@
POBJECT_ATTRIBUTES ObjectAttributes
);
+NTSYSAPI
NTSTATUS
NTAPI
ZwOpenSymbolicLinkObject(
@@ -376,6 +379,7 @@
OUT PULONG ResultLength
);
+NTSYSAPI
NTSTATUS
NTAPI
ZwQuerySymbolicLinkObject(
_____
Modified: trunk/reactos/include/ndk/obtypes.h
--- trunk/reactos/include/ndk/obtypes.h 2005-11-28 21:28:12 UTC (rev
19725)
+++ trunk/reactos/include/ndk/obtypes.h 2005-11-28 21:40:21 UTC (rev
19726)
@@ -120,11 +120,11 @@
//
// Dump Control Structure for Object Debugging
//
-typedef struct _OBJECT_DUMP_CONTROL
+typedef struct _OB_DUMP_CONTROL
{
PVOID Stream;
ULONG Detail;
-} OBJECT_DUMP_CONTROL, *POBJECT_DUMP_CONTROL;
+} OB_DUMP_CONTROL, *POB_DUMP_CONTROL;
#ifndef NTOS_MODE_USER
#ifndef _REACTOS_
@@ -196,6 +196,11 @@
OUT PULONG ReturnLength
);
+typedef NTSTATUS
+(NTAPI *OB_OKAYTOCLOSE_METHOD)(
+ VOID
+);
+
#else
//
_____
Modified: trunk/reactos/include/ndk/rtlfuncs.h
--- trunk/reactos/include/ndk/rtlfuncs.h 2005-11-28 21:28:12 UTC
(rev 19725)
+++ trunk/reactos/include/ndk/rtlfuncs.h 2005-11-28 21:40:21 UTC
(rev 19726)
@@ -1595,33 +1595,8 @@
IN BOOLEAN IsWinlogon
);
-static __inline
-struct _PEB*
-NtCurrentPeb(VOID)
-{
- struct _PEB *pPeb;
+#define NtCurrentPeb() (NtCurrentTeb()->ProcessEnvironmentBlock)
-#if defined(__GNUC__)
-
- __asm__ __volatile__
- (
- "movl %%fs:0x30, %0\n" /* fs:30h == Teb->Peb */
- : "=r" (pPeb) /* can't have two memory operands */
- : /* no inputs */
- );
-
-#elif defined(_MSC_VER)
-
- __asm mov eax, fs:0x30;
- __asm mov pPeb, eax
-
-#else
-#error Unknown compiler for inline assembler
-#endif
-
- return pPeb;
-}
-
//
// Environment/Path Functions
//
_____
Modified: trunk/reactos/include/ndk/rtltypes.h
--- trunk/reactos/include/ndk/rtltypes.h 2005-11-28 21:28:12 UTC
(rev 19725)
+++ trunk/reactos/include/ndk/rtltypes.h 2005-11-28 21:40:21 UTC
(rev 19726)
@@ -537,11 +537,18 @@
CSHORT Milliseconds;
CSHORT Weekday;
} TIME_FIELDS, *PTIME_FIELDS;
-#endif
+#else
//
-// ACE Definition
+// ACE Definitions
//
+typedef struct _ACE_HEADER
+{
+ UCHAR AceType;
+ UCHAR AceFlags;
+ USHORT AceSize;
+} ACE_HEADER, *PACE_HEADER;
+#endif
typedef struct _ACE
{
ACE_HEADER Header;
_____
Modified: trunk/reactos/include/ndk/setypes.h
--- trunk/reactos/include/ndk/setypes.h 2005-11-28 21:28:12 UTC (rev
19725)
+++ trunk/reactos/include/ndk/setypes.h 2005-11-28 21:40:21 UTC (rev
19726)
@@ -24,10 +24,11 @@
//
#include <umtypes.h>
+#ifdef NTOS_MODE_USER
+
//
// Privilege constants
//
-#ifdef NTOS_MODE_USER
#define SE_MIN_WELL_KNOWN_PRIVILEGE (2L)
#define SE_CREATE_TOKEN_PRIVILEGE (2L)
#define SE_ASSIGNPRIMARYTOKEN_PRIVILEGE (3L)
@@ -54,12 +55,11 @@
#define SE_CHANGE_NOTIFY_PRIVILEGE (23L)
#define SE_REMOTE_SHUTDOWN_PRIVILEGE (24L)
#define SE_MAX_WELL_KNOWN_PRIVILEGE
(SE_REMOTE_SHUTDOWN_PRIVILEGE)
-#endif
+#else
//
-// Policy types
+// Audit and Policy Structures
//
-#ifndef NTOS_MODE_USER
typedef struct _SEP_AUDIT_POLICY_CATEGORIES
{
UCHAR System:4;
_____
Modified: trunk/reactos/lib/hid/precomp.h
--- trunk/reactos/lib/hid/precomp.h 2005-11-28 21:28:12 UTC (rev
19725)
+++ trunk/reactos/lib/hid/precomp.h 2005-11-28 21:40:21 UTC (rev
19726)
@@ -1,8 +1,16 @@
-#include <ddk/ntddk.h>
+#define WIN32_NO_STATUS
#include <windows.h>
+#define DDKAPI __stdcall
#define _HIDPI_
#define _HIDPI_NO_FUNCTION_MACROS_
+typedef VOID
+(DDKAPI *PINTERFACE_REFERENCE)(
+ PVOID Context);
+typedef VOID
+(DDKAPI *PINTERFACE_DEREFERENCE)(
+ PVOID Context);
+#include <ntndk.h>
#include <ddk/hidusage.h>
#include <ddk/hidclass.h>
#include <ddk/hidpi.h>
_____
Modified: trunk/reactos/lib/rtl/bootdata.c
--- trunk/reactos/lib/rtl/bootdata.c 2005-11-28 21:28:12 UTC (rev
19725)
+++ trunk/reactos/lib/rtl/bootdata.c 2005-11-28 21:40:21 UTC (rev
19726)
@@ -126,7 +126,7 @@
static NTSTATUS
RtlpSysVolCheckOwnerAndSecurity(IN HANDLE DirectoryHandle,
- IN PSECURITY_DESCRIPTOR
SecurityDescriptor)
+ IN PISECURITY_DESCRIPTOR
SecurityDescriptor)
{
PSECURITY_DESCRIPTOR RelSD = NULL;
PSECURITY_DESCRIPTOR NewRelSD = NULL;
@@ -549,7 +549,7 @@
HANDLE hDirectory;
UNICODE_STRING DirectoryName, NewPath;
ULONG PathLen;
- PSECURITY_DESCRIPTOR SecurityDescriptor = NULL;
+ PISECURITY_DESCRIPTOR SecurityDescriptor = NULL;
PSID SystemSid = NULL;
BOOLEAN AddSep = FALSE;
NTSTATUS Status;
_____
Modified: trunk/reactos/ntoskrnl/cm/regobj.c
--- trunk/reactos/ntoskrnl/cm/regobj.c 2005-11-28 21:28:12 UTC (rev
19725)
+++ trunk/reactos/ntoskrnl/cm/regobj.c 2005-11-28 21:40:21 UTC (rev
19726)
@@ -336,7 +336,7 @@
static NTSTATUS
CmiQuerySecurityDescriptor(PKEY_OBJECT KeyObject,
SECURITY_INFORMATION SecurityInformation,
- PSECURITY_DESCRIPTOR SecurityDescriptor,
+ PISECURITY_DESCRIPTOR SecurityDescriptor,
PULONG BufferLength)
{
ULONG_PTR Current;
_____
Modified: trunk/reactos/ntoskrnl/include/ntoskrnl.h
--- trunk/reactos/ntoskrnl/include/ntoskrnl.h 2005-11-28 21:28:12 UTC
(rev 19725)
+++ trunk/reactos/ntoskrnl/include/ntoskrnl.h 2005-11-28 21:40:21 UTC
(rev 19726)
@@ -13,8 +13,8 @@
#define _NTSYSTEM_
/* DDK/IFS/NDK Headers */
+#include <ddk/ntifs.h>
#include <ddk/ntddk.h>
-#include <ddk/ntifs.h>
#include <ddk/wdmguid.h>
#include <ndk/ntndk.h>
_____
Modified: trunk/reactos/ntoskrnl/ob/security.c
--- trunk/reactos/ntoskrnl/ob/security.c 2005-11-28 21:28:12 UTC
(rev 19725)
+++ trunk/reactos/ntoskrnl/ob/security.c 2005-11-28 21:40:21 UTC
(rev 19726)
@@ -263,7 +263,7 @@
IN ULONG RefBias)
{
/* HACK: Return the same descriptor back */
- PSECURITY_DESCRIPTOR SdCopy;
+ PISECURITY_DESCRIPTOR SdCopy;
DPRINT1("ObLogSecurityDescriptor is not implemented!\n",
InputSecurityDescriptor);
SdCopy = ExAllocatePool(PagedPool, sizeof(*SdCopy));
_____
Modified: trunk/reactos/ntoskrnl/se/sd.c
--- trunk/reactos/ntoskrnl/se/sd.c 2005-11-28 21:28:12 UTC (rev
19725)
+++ trunk/reactos/ntoskrnl/se/sd.c 2005-11-28 21:40:21 UTC (rev
19726)
@@ -113,7 +113,7 @@
NTSTATUS
STDCALL
SeSetWorldSecurityDescriptor(SECURITY_INFORMATION SecurityInformation,
- PSECURITY_DESCRIPTOR SecurityDescriptor,
+ PISECURITY_DESCRIPTOR SecurityDescriptor,
PULONG BufferLength)
{
ULONG_PTR Current;
@@ -356,15 +356,16 @@
NTSTATUS
STDCALL
SeCaptureSecurityDescriptor(
- IN PSECURITY_DESCRIPTOR OriginalSecurityDescriptor,
+ IN PSECURITY_DESCRIPTOR _OriginalSecurityDescriptor,
IN KPROCESSOR_MODE CurrentMode,
IN POOL_TYPE PoolType,
IN BOOLEAN CaptureIfKernel,
OUT PSECURITY_DESCRIPTOR *CapturedSecurityDescriptor
)
{
+ PISECURITY_DESCRIPTOR OriginalSecurityDescriptor =
_OriginalSecurityDescriptor;
SECURITY_DESCRIPTOR DescriptorCopy;
- PSECURITY_DESCRIPTOR NewDescriptor;
+ PISECURITY_DESCRIPTOR NewDescriptor;
ULONG OwnerSAC = 0, GroupSAC = 0;
ULONG OwnerSize = 0, GroupSize = 0;
ULONG SaclSize = 0, DaclSize = 0;
@@ -678,7 +679,7 @@
IN OUT PULONG Length,
IN PSECURITY_DESCRIPTOR
*ObjectsSecurityDescriptor OPTIONAL)
{
- PSECURITY_DESCRIPTOR ObjectSd;
+ PISECURITY_DESCRIPTOR ObjectSd;
PISECURITY_DESCRIPTOR_RELATIVE RelSD;
PSID Owner = NULL;
PSID Group = NULL;
@@ -873,11 +874,12 @@
*/
BOOLEAN STDCALL
SeValidSecurityDescriptor(IN ULONG Length,
- IN PSECURITY_DESCRIPTOR SecurityDescriptor)
+ IN PSECURITY_DESCRIPTOR _SecurityDescriptor)
{
ULONG SdLength;
PISID Sid;
PACL Acl;
+ PISECURITY_DESCRIPTOR SecurityDescriptor = _SecurityDescriptor;
if (Length < SECURITY_DESCRIPTOR_MIN_LENGTH)
{
_____
Modified: trunk/reactos/ntoskrnl/se/semgr.c
--- trunk/reactos/ntoskrnl/se/semgr.c 2005-11-28 21:28:12 UTC (rev
19725)
+++ trunk/reactos/ntoskrnl/se/semgr.c 2005-11-28 21:40:21 UTC (rev
19726)
@@ -196,16 +196,17 @@
NTSTATUS
STDCALL
SeDefaultObjectMethod(PVOID Object,
- SECURITY_OPERATION_CODE OperationType,
+ SECURITY_OPERATION_CODE OperationType,
SECURITY_INFORMATION SecurityInformation,
- PSECURITY_DESCRIPTOR SecurityDescriptor,
+ PSECURITY_DESCRIPTOR _SecurityDescriptor,
PULONG ReturnLength,
PSECURITY_DESCRIPTOR *OldSecurityDescriptor,
POOL_TYPE PoolType,
PGENERIC_MAPPING GenericMapping)
{
- PSECURITY_DESCRIPTOR ObjectSd;
- PSECURITY_DESCRIPTOR NewSd;
+ PISECURITY_DESCRIPTOR ObjectSd;
+ PISECURITY_DESCRIPTOR NewSd;
+ PISECURITY_DESCRIPTOR SecurityDescriptor = _SecurityDescriptor;
POBJECT_HEADER Header = BODY_TO_HEADER(Object);
PSID Owner = 0;
PSID Group = 0;
@@ -541,15 +542,17 @@
* @implemented
*/
NTSTATUS STDCALL
-SeAssignSecurity(PSECURITY_DESCRIPTOR ParentDescriptor OPTIONAL,
- PSECURITY_DESCRIPTOR ExplicitDescriptor OPTIONAL,
+SeAssignSecurity(PSECURITY_DESCRIPTOR _ParentDescriptor OPTIONAL,
+ PSECURITY_DESCRIPTOR _ExplicitDescriptor OPTIONAL,
PSECURITY_DESCRIPTOR *NewDescriptor,
BOOLEAN IsDirectoryObject,
PSECURITY_SUBJECT_CONTEXT SubjectContext,
PGENERIC_MAPPING GenericMapping,
POOL_TYPE PoolType)
{
- PSECURITY_DESCRIPTOR Descriptor;
+ PISECURITY_DESCRIPTOR ParentDescriptor = _ParentDescriptor;
+ PISECURITY_DESCRIPTOR ExplicitDescriptor = _ExplicitDescriptor;
+ PISECURITY_DESCRIPTOR Descriptor;
PTOKEN Token;
ULONG OwnerLength = 0;
ULONG GroupLength = 0;
_____
Modified: trunk/reactos/w32api/include/ddk/ntifs.h
--- trunk/reactos/w32api/include/ddk/ntifs.h 2005-11-28 21:28:12 UTC
(rev 19725)
+++ trunk/reactos/w32api/include/ddk/ntifs.h 2005-11-28 21:40:21 UTC
(rev 19726)
@@ -619,17 +619,6 @@
ULONG CompressedChunkSizes[ANYSIZE_ARRAY];
} COMPRESSED_DATA_INFO, *PCOMPRESSED_DATA_INFO;
-#define EX_RUNDOWN_ACTIVE 0x1
-#define EX_RUNDOWN_COUNT_SHIFT 0x1
-#define EX_RUNDOWN_COUNT_INC (1 << EX_RUNDOWN_COUNT_SHIFT)
-
-typedef struct _EX_RUNDOWN_REF {
- _ANONYMOUS_UNION union {
- ULONG Count;
- PVOID Ptr;
- } DUMMYUNIONNAME;
-} EX_RUNDOWN_REF, *PEX_RUNDOWN_REF;
-
#define EX_PUSH_LOCK_LOCK_V ((ULONG_PTR)0x0)
#define EX_PUSH_LOCK_LOCK ((ULONG_PTR)0x1)
#define EX_PUSH_LOCK_WAITING ((ULONG_PTR)0x2)
@@ -655,6 +644,111 @@
};
} EX_PUSH_LOCK, *PEX_PUSH_LOCK;
+typedef struct _SID_IDENTIFIER_AUTHORITY {
+ BYTE Value[6];
+}
SID_IDENTIFIER_AUTHORITY,*PSID_IDENTIFIER_AUTHORITY,*LPSID_IDENTIFIER_AU
THORITY;
+typedef PVOID PSID;
+typedef struct _SID {
+ BYTE Revision;
+ BYTE SubAuthorityCount;
+ SID_IDENTIFIER_AUTHORITY IdentifierAuthority;
+ DWORD SubAuthority[ANYSIZE_ARRAY];
+} SID, *PISID;
+typedef struct _SID_AND_ATTRIBUTES {
+ PSID Sid;
+ DWORD Attributes;
+} SID_AND_ATTRIBUTES, *PSID_AND_ATTRIBUTES;
+typedef SID_AND_ATTRIBUTES SID_AND_ATTRIBUTES_ARRAY[ANYSIZE_ARRAY];
+typedef SID_AND_ATTRIBUTES_ARRAY *PSID_AND_ATTRIBUTES_ARRAY;
+typedef struct _TOKEN_SOURCE {
+ CHAR SourceName[TOKEN_SOURCE_LENGTH];
+ LUID SourceIdentifier;
+} TOKEN_SOURCE,*PTOKEN_SOURCE;
+typedef struct _TOKEN_CONTROL {
+ LUID TokenId;
+ LUID AuthenticationId;
+ LUID ModifiedId;
+ TOKEN_SOURCE TokenSource;
+} TOKEN_CONTROL,*PTOKEN_CONTROL;
+typedef struct _TOKEN_DEFAULT_DACL {
+ PACL DefaultDacl;
+} TOKEN_DEFAULT_DACL,*PTOKEN_DEFAULT_DACL;
+typedef struct _TOKEN_GROUPS {
+ DWORD GroupCount;
+ SID_AND_ATTRIBUTES Groups[ANYSIZE_ARRAY];
+} TOKEN_GROUPS,*PTOKEN_GROUPS,*LPTOKEN_GROUPS;
+typedef struct _TOKEN_GROUPS_AND_PRIVILEGES {
+ ULONG SidCount;
+ ULONG SidLength;
+ PSID_AND_ATTRIBUTES Sids;
+ ULONG RestrictedSidCount;
+ ULONG RestrictedSidLength;
+ PSID_AND_ATTRIBUTES RestrictedSids;
+ ULONG PrivilegeCount;
+ ULONG PrivilegeLength;
+ PLUID_AND_ATTRIBUTES Privileges;
+ LUID AuthenticationId;
+} TOKEN_GROUPS_AND_PRIVILEGES, *PTOKEN_GROUPS_AND_PRIVILEGES;
+typedef struct _TOKEN_ORIGIN {
+ LUID OriginatingLogonSession;
+} TOKEN_ORIGIN, *PTOKEN_ORIGIN;
+typedef struct _TOKEN_OWNER {
+ PSID Owner;
+} TOKEN_OWNER,*PTOKEN_OWNER;
+typedef struct _TOKEN_PRIMARY_GROUP {
+ PSID PrimaryGroup;
+} TOKEN_PRIMARY_GROUP,*PTOKEN_PRIMARY_GROUP;
+typedef struct _TOKEN_PRIVILEGES {
+ DWORD PrivilegeCount;
+ LUID_AND_ATTRIBUTES Privileges[ANYSIZE_ARRAY];
+} TOKEN_PRIVILEGES,*PTOKEN_PRIVILEGES,*LPTOKEN_PRIVILEGES;
+typedef enum tagTOKEN_TYPE {
+ TokenPrimary = 1,
+ TokenImpersonation
+} TOKEN_TYPE,*PTOKEN_TYPE;
+typedef struct _TOKEN_STATISTICS {
+ LUID TokenId;
+ LUID AuthenticationId;
+ LARGE_INTEGER ExpirationTime;
+ TOKEN_TYPE TokenType;
+ SECURITY_IMPERSONATION_LEVEL ImpersonationLevel;
+ DWORD DynamicCharged;
+ DWORD DynamicAvailable;
+ DWORD GroupCount;
+ DWORD PrivilegeCount;
+ LUID ModifiedId;
+} TOKEN_STATISTICS, *PTOKEN_STATISTICS;
+typedef struct _TOKEN_USER {
+ SID_AND_ATTRIBUTES User;
+} TOKEN_USER, *PTOKEN_USER;
+typedef DWORD SECURITY_INFORMATION,*PSECURITY_INFORMATION;
+typedef WORD SECURITY_DESCRIPTOR_CONTROL,*PSECURITY_DESCRIPTOR_CONTROL;
+typedef struct _SECURITY_DESCRIPTOR {
+ BYTE Revision;
+ BYTE Sbz1;
+ SECURITY_DESCRIPTOR_CONTROL Control;
+ PSID Owner;
+ PSID Group;
+ PACL Sacl;
+ PACL Dacl;
+} SECURITY_DESCRIPTOR, *PISECURITY_DESCRIPTOR;
+typedef struct _SECURITY_DESCRIPTOR_RELATIVE {
+ BYTE Revision;
+ BYTE Sbz1;
+ SECURITY_DESCRIPTOR_CONTROL Control;
+ DWORD Owner;
+ DWORD Group;
+ DWORD Sacl;
+ DWORD Dacl;
+} SECURITY_DESCRIPTOR_RELATIVE, *PISECURITY_DESCRIPTOR_RELATIVE;
+typedef enum _TOKEN_INFORMATION_CLASS {
+ TokenUser=1,TokenGroups,TokenPrivileges,TokenOwner,
+ TokenPrimaryGroup,TokenDefaultDacl,TokenSource,TokenType,
+ TokenImpersonationLevel,TokenStatistics,TokenRestrictedSids,
+ TokenSessionId,TokenGroupsAndPrivileges,TokenSessionReference,
+ TokenSandBoxInert,TokenAuditPolicy,TokenOrigin,
+} TOKEN_INFORMATION_CLASS;
+
typedef struct _FILE_ACCESS_INFORMATION {
ACCESS_MASK AccessFlags;
} FILE_ACCESS_INFORMATION, *PFILE_ACCESS_INFORMATION;
@@ -831,6 +925,17 @@
SID Sid;
} FILE_GET_QUOTA_INFORMATION, *PFILE_GET_QUOTA_INFORMATION;
+typedef struct _FILE_QUOTA_INFORMATION
+{
+ ULONG NextEntryOffset;
+ ULONG SidLength;
+ LARGE_INTEGER ChangeTime;
+ LARGE_INTEGER QuotaUsed;
+ LARGE_INTEGER QuotaThreshold;
+ LARGE_INTEGER QuotaLimit;
+ SID Sid;
+} FILE_QUOTA_INFORMATION, *PFILE_QUOTA_INFORMATION;
+
typedef struct _FILE_INTERNAL_INFORMATION {
LARGE_INTEGER IndexNumber;
} FILE_INTERNAL_INFORMATION, *PFILE_INTERNAL_INFORMATION;
_____
Modified: trunk/reactos/w32api/include/ddk/winddk.h
--- trunk/reactos/w32api/include/ddk/winddk.h 2005-11-28 21:28:12 UTC
(rev 19725)
+++ trunk/reactos/w32api/include/ddk/winddk.h 2005-11-28 21:40:21 UTC
(rev 19726)
@@ -134,6 +134,10 @@
struct _DRIVE_LAYOUT_INFORMATION;
struct _DRIVE_LAYOUT_INFORMATION_EX;
+typedef PVOID PSECURITY_DESCRIPTOR;
+typedef ULONG SECURITY_INFORMATION, *PSECURITY_INFORMATION;
+typedef PVOID PSID;
+
DECLARE_INTERNAL_OBJECT(ADAPTER_OBJECT)
DECLARE_INTERNAL_OBJECT(DMA_ADAPTER)
DECLARE_INTERNAL_OBJECT(IO_STATUS_BLOCK)
@@ -212,6 +216,10 @@
#define MAXIMUM_WAIT_OBJECTS 64
+#define EX_RUNDOWN_ACTIVE 0x1
+#define EX_RUNDOWN_COUNT_SHIFT 0x1
+#define EX_RUNDOWN_COUNT_INC (1 << EX_RUNDOWN_COUNT_SHIFT)
+
#define METHOD_BUFFERED 0
#define METHOD_IN_DIRECT 1
#define METHOD_OUT_DIRECT 2
@@ -1114,6 +1122,15 @@
ULONG OldIrql;
} FAST_MUTEX, *PFAST_MUTEX;
+typedef struct _EX_RUNDOWN_REF
+{
+ union
+ {
+ ULONG_PTR Count;
+ PVOID Ptr;
+ };
+} EX_RUNDOWN_REF, *PEX_RUNDOWN_REF;
+
typedef struct _KGATE
{
DISPATCHER_HEADER Header;
[truncated at 1000 lines; 96 more skipped]