Add missing types to NDK
Modified: trunk/reactos/include/ndk/rtlfuncs.h
Modified: trunk/reactos/include/ndk/umtypes.h
Modified: trunk/reactos/include/ndk/zwtypes.h
_____
Modified: trunk/reactos/include/ndk/rtlfuncs.h
--- trunk/reactos/include/ndk/rtlfuncs.h 2005-06-20 18:48:32 UTC
(rev 16158)
+++ trunk/reactos/include/ndk/rtlfuncs.h 2005-06-20 18:54:47 UTC
(rev 16159)
@@ -328,7 +328,69 @@
ACCESS_MASK AccessMask,
PSID Sid
);
-
+
+NTSTATUS
+STDCALL
+RtlAddAccessAllowedAceEx(
+ IN OUT PACL pAcl,
+ IN DWORD dwAceRevision,
+ IN DWORD AceFlags,
+ IN DWORD AccessMask,
+ IN PSID pSid
+);
+
+NTSTATUS
+STDCALL
+RtlAddAccessDeniedAce(
+ PACL Acl,
+ ULONG Revision,
+ ACCESS_MASK AccessMask,
+ PSID Sid
+);
+
+NTSTATUS
+STDCALL
+RtlAddAccessDeniedAceEx(
+ IN OUT PACL Acl,
+ IN ULONG Revision,
+ IN ULONG Flags,
+ IN ACCESS_MASK AccessMask,
+ IN PSID Sid
+);
+
+NTSTATUS
+STDCALL
+RtlAddAuditAccessAceEx(
+ IN OUT PACL Acl,
+ IN ULONG Revision,
+ IN ULONG Flags,
+ IN ACCESS_MASK AccessMask,
+ IN PSID Sid,
+ IN BOOLEAN Success,
+ IN BOOLEAN Failure
+);
+
+NTSTATUS
+STDCALL
+RtlAddAce(
+ PACL Acl,
+ ULONG Revision,
+ ULONG StartingIndex,
+ PACE AceList,
+ ULONG AceListLength
+);
+
+NTSTATUS
+STDCALL
+RtlAddAuditAccessAce(
+ PACL Acl,
+ ULONG Revision,
+ ACCESS_MASK AccessMask,
+ PSID Sid,
+ BOOLEAN Success,
+ BOOLEAN Failure
+);
+
NTSTATUS
STDCALL
RtlAllocateAndInitializeSid(
@@ -345,6 +407,20 @@
OUT PSID *Sid
);
+BOOLEAN
+STDCALL
+RtlAreAllAccessesGranted(
+ ACCESS_MASK GrantedAccess,
+ ACCESS_MASK DesiredAccess
+);
+
+BOOLEAN
+STDCALL
+RtlAreAnyAccessesGranted(
+ ACCESS_MASK GrantedAccess,
+ ACCESS_MASK DesiredAccess
+);
+
VOID
STDCALL
RtlCopyLuid(
@@ -410,6 +486,20 @@
ULONG Revision
);
+NTSTATUS
+STDCALL
+RtlDeleteAce(
+ PACL Acl,
+ ULONG AceIndex
+);
+
+BOOLEAN
+STDCALL
+RtlEqualPrefixSid(
+ PSID Sid1,
+ PSID Sid2
+);
+
BOOLEAN
STDCALL
RtlEqualSid (
@@ -417,12 +507,35 @@
IN PSID Sid2
);
+BOOLEAN
+STDCALL
+RtlFirstFreeAce(
+ PACL Acl,
+ PACE* Ace
+);
+
PVOID
STDCALL
RtlFreeSid (
IN PSID Sid
);
+NTSTATUS
+STDCALL
+RtlGetAce(
+ PACL Acl,
+ ULONG AceIndex,
+ PACE *Ace
+);
+
+NTSTATUS
+STDCALL
+RtlGetControlSecurityDescriptor(
+ PSECURITY_DESCRIPTOR SecurityDescriptor,
+ PSECURITY_DESCRIPTOR_CONTROL Control,
+ PULONG Revision
+);
+
NTSTATUS
STDCALL
RtlGetDaclSecurityDescriptor(
@@ -457,8 +570,23 @@
OUT PBOOLEAN OwnerDefaulted
);
+BOOLEAN
+STDCALL
+RtlGetSecurityDescriptorRMControl(
+ PSECURITY_DESCRIPTOR SecurityDescriptor,
+ PUCHAR RMControl
+);
+
+PSID_IDENTIFIER_AUTHORITY
+STDCALL
+RtlIdentifierAuthoritySid(PSID Sid);
+
NTSTATUS
STDCALL
+RtlImpersonateSelf(IN SECURITY_IMPERSONATION_LEVEL ImpersonationLevel);
+
+NTSTATUS
+STDCALL
RtlInitializeSid(
IN OUT PSID Sid,
IN PSID_IDENTIFIER_AUTHORITY IdentifierAuthority,
@@ -473,12 +601,19 @@
STDCALL
RtlLengthSid(IN PSID Sid);
-#if (VER_PRODUCTBUILD >= 2195)
+NTSTATUS
+STDCALL
+RtlQueryInformationAcl(
+ PACL Acl,
+ PVOID Information,
+ ULONG InformationLength,
+ ACL_INFORMATION_CLASS InformationClass
+);
NTSTATUS
STDCALL
RtlSelfRelativeToAbsoluteSD(
- IN PSECURITY_DESCRIPTOR SelfRelativeSD,
+ IN PSECURITY_DESCRIPTOR_RELATIVE SelfRelativeSD,
OUT PSECURITY_DESCRIPTOR AbsoluteSD,
IN PULONG AbsoluteSDSize,
IN PACL Dacl,
@@ -491,7 +626,13 @@
IN PULONG PrimaryGroupSize
);
-#endif /* (VER_PRODUCTBUILD >= 2195) */
+NTSTATUS
+STDCALL
+RtlSetControlSecurityDescriptor(
+ IN PSECURITY_DESCRIPTOR SecurityDescriptor,
+ IN SECURITY_DESCRIPTOR_CONTROL ControlBitsOfInterest,
+ IN SECURITY_DESCRIPTOR_CONTROL ControlBitsToSet
+);
NTSTATUS
STDCALL
@@ -510,6 +651,15 @@
IN BOOLEAN GroupDefaulted
);
+NTSTATUS
+STDCALL
+RtlSetInformationAcl(
+ PACL Acl,
+ PVOID Information,
+ ULONG InformationLength,
+ ACL_INFORMATION_CLASS InformationClass
+);
+
NTSTATUS
STDCALL
RtlSetOwnerSecurityDescriptor(
@@ -527,6 +677,13 @@
IN BOOLEAN SaclDefaulted
);
+VOID
+STDCALL
+RtlSetSecurityDescriptorRMControl(
+ PSECURITY_DESCRIPTOR SecurityDescriptor,
+ PUCHAR RMControl
+);
+
PUCHAR
STDCALL
RtlSubAuthorityCountSid(
@@ -542,6 +699,18 @@
BOOLEAN
STDCALL
+RtlValidRelativeSecurityDescriptor(
+ IN PSECURITY_DESCRIPTOR_RELATIVE SecurityDescriptorInput,
+ IN ULONG SecurityDescriptorLength,
+ IN SECURITY_INFORMATION RequiredInformation
+);
+
+BOOLEAN
+STDCALL
+RtlValidSecurityDescriptor(IN PSECURITY_DESCRIPTOR SecurityDescriptor);
+
+BOOLEAN
+STDCALL
RtlValidSid(IN PSID Sid);
BOOLEAN
@@ -1229,9 +1398,18 @@
/*
* Misc String Functions
- */
+ */
BOOLEAN
STDCALL
+RtlDosPathNameToNtPathName_U(
+ PWSTR DosName,
+ PUNICODE_STRING NtName,
+ PWSTR *ShortName,
+ PCURDIR CurrentDirectory
+);
+
+BOOLEAN
+STDCALL
RtlIsNameLegalDOS8Dot3(
IN PUNICODE_STRING UnicodeName,
IN PANSI_STRING AnsiName,
_____
Modified: trunk/reactos/include/ndk/umtypes.h
--- trunk/reactos/include/ndk/umtypes.h 2005-06-20 18:48:32 UTC (rev
16158)
+++ trunk/reactos/include/ndk/umtypes.h 2005-06-20 18:54:47 UTC (rev
16159)
@@ -568,6 +568,7 @@
typedef ULONG EXECUTION_STATE;
/* Basic NT Types */
+#if !defined(_NTSECAPI_H) && !defined(_SUBAUTH_H)
typedef struct _UNICODE_STRING
{
USHORT Length;
@@ -582,10 +583,6 @@
USHORT MaximumLength;
PCHAR Buffer;
} STRING, *PSTRING;
-typedef STRING ANSI_STRING;
-typedef PSTRING PANSI_STRING;
-typedef STRING OEM_STRING;
-typedef PSTRING POEM_STRING;
typedef struct _OBJECT_ATTRIBUTES
{
@@ -596,7 +593,13 @@
PVOID SecurityDescriptor;
PVOID SecurityQualityOfService;
} OBJECT_ATTRIBUTES, *POBJECT_ATTRIBUTES;
+#endif
+typedef STRING ANSI_STRING;
+typedef PSTRING PANSI_STRING;
+typedef STRING OEM_STRING;
+typedef PSTRING POEM_STRING;
+
typedef struct _IO_STATUS_BLOCK
{
union
@@ -702,9 +705,34 @@
/* Class 1 */
typedef struct _KEY_USER_FLAGS_INFORMATION
{
- ULONG UserFlags;
+ ULONG UserFlags;
} KEY_USER_FLAGS_INFORMATION, *PKEY_USER_FLAGS_INFORMATION;
+typedef struct _KEY_FULL_INFORMATION
+{
+ LARGE_INTEGER LastWriteTime;
+ ULONG TitleIndex;
+ ULONG ClassOffset;
+ ULONG ClassLength;
+ ULONG SubKeys;
+ ULONG MaxNameLen;
+ ULONG MaxClassLen;
+ ULONG Values;
+ ULONG MaxValueNameLen;
+ ULONG MaxValueDataLen;
+ WCHAR Class[1];
+} KEY_FULL_INFORMATION, *PKEY_FULL_INFORMATION;
+
+typedef struct _KEY_NODE_INFORMATION
+{
+ LARGE_INTEGER LastWriteTime;
+ ULONG TitleIndex;
+ ULONG ClassOffset;
+ ULONG ClassLength;
+ ULONG NameLength;
+ WCHAR Name[1];
+} KEY_NODE_INFORMATION, *PKEY_NODE_INFORMATION;
+
/*
* File
*/
_____
Modified: trunk/reactos/include/ndk/zwtypes.h
--- trunk/reactos/include/ndk/zwtypes.h 2005-06-20 18:48:32 UTC (rev
16158)
+++ trunk/reactos/include/ndk/zwtypes.h 2005-06-20 18:54:47 UTC (rev
16159)
@@ -406,6 +406,13 @@
LARGE_INTEGER UserTime;
} KERNEL_USER_TIMES, *PKERNEL_USER_TIMES;
+/* Class 9 */
+typedef struct _PROCESS_ACCESS_TOKEN
+{
+ HANDLE Token;
+ HANDLE Thread;
+} PROCESS_ACCESS_TOKEN, *PPROCESS_ACCESS_TOKEN;
+
/* Class 16 */
typedef struct _PROCESS_PRIORITY_CLASS
{