"A" list merge

git-svn-id: svn+ssh://svn.code.sf.net/p/mingw-w64/code/trunk@3192 4407c894-4637-0410-b4f5-ada5f102cad1
diff --git a/mingw-w64-headers/include/ChangeLog b/mingw-w64-headers/include/ChangeLog
index 9c07bd9..9e8f837 100644
--- a/mingw-w64-headers/include/ChangeLog
+++ b/mingw-w64-headers/include/ChangeLog
@@ -1,5 +1,22 @@
 2010-08-09  Jonathan Yong  <jon_y@sourceforge.net>
 
+	* aclapi.h (TreeSetNamedSecurityInfoA): New.
+	(TreeSetNamedSecurityInfoW): New.
+	* authz.h (AUTHZ_SECURITY_ATTRIBUTE_OPERATION): New typedef.
+	(PAUTHZ_SECURITY_ATTRIBUTE_OPERATION): Likewise.
+	(AUTHZ_SECURITY_ATTRIBUTE_FQBN_VALUE): Likewise.
+	(PAUTHZ_SECURITY_ATTRIBUTE_FQBN_VALUE): Likewise.
+	(AUTHZ_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE): Likewise.
+	(PAUTHZ_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE): Likewise.
+	(AUTHZ_SECURITY_ATTRIBUTE_V1): Likewise.
+	(PAUTHZ_SECURITY_ATTRIBUTE_V1): Likewise.
+	(AUTHZ_SECURITY_ATTRIBUTES_INFORMATION): Likewise.
+	(PAUTHZ_SECURITY_ATTRIBUTES_INFORMATION): Likewise.
+	(AuthzModifySecurityAttributes): New.
+	* azroles.h (AZ_PROP_CONSTANTS): Add new enum entries.
+
+2010-08-09  Jonathan Yong  <jon_y@sourceforge.net>
+
 	* virtdisk.h: New.
 	* windows.h: Add virtdisk.h include.
 
diff --git a/mingw-w64-headers/include/aclapi.h b/mingw-w64-headers/include/aclapi.h
index 7cf42b8..d54a786 100644
--- a/mingw-w64-headers/include/aclapi.h
+++ b/mingw-w64-headers/include/aclapi.h
@@ -90,6 +90,38 @@
 
 #define AccProvInit(err)
 
+#if (_WIN32_WINNT >= 0x0600)
+#define TreeSetNamedSecurityInfo __MINGW_NAME_AW(TreeSetNamedSecurityInfo)
+WINADVAPI DWORD WINAPI TreeSetNamedSecurityInfoA(
+  LPSTR pObjectName,
+  SE_OBJECT_TYPE ObjectType,
+  SECURITY_INFORMATION SecurityInfo,
+  PSID pOwner,
+  PSID pGroup,
+  PACL pDacl,
+  PACL pSacl,
+  DWORD dwAction,
+  FN_PROGRESS fnProgress,
+  PROG_INVOKE_SETTING ProgressInvokeSetting,
+  PVOID Args
+);
+
+WINADVAPI DWORD WINAPI TreeSetNamedSecurityInfoW(
+  LPWSTR pObjectName,
+  SE_OBJECT_TYPE ObjectType,
+  SECURITY_INFORMATION SecurityInfo,
+  PSID pOwner,
+  PSID pGroup,
+  PACL pDacl,
+  PACL pSacl,
+  DWORD dwAction,
+  FN_PROGRESS fnProgress,
+  PROG_INVOKE_SETTING ProgressInvokeSetting,
+  PVOID Args
+);
+
+#endif /*(_WIN32_WINNT >= 0x0600)*/
+
 #ifdef __cplusplus
 }
 #endif
diff --git a/mingw-w64-headers/include/authz.h b/mingw-w64-headers/include/authz.h
index 7518d0e..2c98796 100644
--- a/mingw-w64-headers/include/authz.h
+++ b/mingw-w64-headers/include/authz.h
@@ -123,6 +123,58 @@
   AUTHZAPI WINBOOL WINAPI AuthzReportSecurityEvent(DWORD dwFlags,AUTHZ_SECURITY_EVENT_PROVIDER_HANDLE hEventProvider,DWORD dwAuditId,PSID pUserSid,DWORD dwCount,...);
   AUTHZAPI WINBOOL WINAPI AuthzReportSecurityEventFromParams(DWORD dwFlags,AUTHZ_SECURITY_EVENT_PROVIDER_HANDLE hEventProvider,DWORD dwAuditId,PSID pUserSid,PAUDIT_PARAMS pParams);
 
+#if (_WIN32_WINNT >= 0x0601)
+__MINGW_EXTENSION typedef enum  {
+  AUTHZ_SECURITY_ATTRIBUTE_OPERATION_NONE          = 0,
+  AUTHZ_SECURITY_ATTRIBUTE_OPERATION_REPLACE_ALL,
+  AUTHZ_SECURITY_ATTRIBUTE_OPERATION_ADD,
+  AUTHZ_SECURITY_ATTRIBUTE_OPERATION_DELETE,
+  AUTHZ_SECURITY_ATTRIBUTE_OPERATION_REPLACE 
+} AUTHZ_SECURITY_ATTRIBUTE_OPERATION, *PAUTHZ_SECURITY_ATTRIBUTE_OPERATION;
+
+typedef struct _AUTHZ_SECURITY_ATTRIBUTE_FQBN_VALUE {
+  ULONG64 Version;
+  PWSTR   pName;
+} AUTHZ_SECURITY_ATTRIBUTE_FQBN_VALUE, *PAUTHZ_SECURITY_ATTRIBUTE_FQBN_VALUE;
+
+typedef struct _AUTHZ_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE {
+  PVOID pValue;
+  ULONG ValueLength;
+} AUTHZ_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE, *PAUTHZ_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE;
+
+#define AUTHZ_SECURITY_ATTRIBUTE_NON_INHERITABLE 0x0001
+#define AUTHZ_SECURITY_ATTRIBUTE_VALUE_CASE_SENSITIVE 0x0002
+
+typedef struct _AUTHZ_SECURITY_ATTRIBUTE_V1 {
+  PWSTR  pName;
+  USHORT ValueType;
+  ULONG  Flags;
+  ULONG  ValueCount;
+  __MINGW_EXTENSION union {
+    PLONG64                                      pInt64;
+    PULONG64                                     pUint64;
+    PWSTR                                        ppString;
+    PAUTHZ_SECURITY_ATTRIBUTE_FQBN_VALUE         pFqbn;
+    PAUTHZ_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE pOctetString;
+  } Values;
+} AUTHZ_SECURITY_ATTRIBUTE_V1, *PAUTHZ_SECURITY_ATTRIBUTE_V1;
+
+typedef struct _AUTHZ_SECURITY_ATTRIBUTES_INFORMATION {
+  USHORT Version;
+  USHORT Reserved;
+  ULONG  AttributeCount;
+  __MINGW_EXTENSION union {
+    PAUTHZ_SECURITY_ATTRIBUTE_V1 pAttributeV1;
+  } Attribute;
+} AUTHZ_SECURITY_ATTRIBUTES_INFORMATION, *PAUTHZ_SECURITY_ATTRIBUTES_INFORMATION;
+
+AUTHZAPI WINBOOL WINAPI AuthzModifySecurityAttributes(
+  AUTHZ_CLIENT_CONTEXT_HANDLE hAuthzClientContext,
+  PAUTHZ_SECURITY_ATTRIBUTE_OPERATION pOperations,
+  PAUTHZ_SECURITY_ATTRIBUTES_INFORMATION pAttributes
+);
+#endif /*(_WIN32_WINNT >= 0x0601)*/
+
 #ifdef __cplusplus
 }
 #endif
diff --git a/mingw-w64-headers/include/azroles.h b/mingw-w64-headers/include/azroles.h
index 4e2a08c..54a060a 100644
--- a/mingw-w64-headers/include/azroles.h
+++ b/mingw-w64-headers/include/azroles.h
@@ -2492,12 +2492,15 @@
     AZ_MAX_DESCRIPTION_LENGTH                       = 1024,
     AZ_MAX_APPLICATION_DATA_LENGTH                  = 4096,
     AZ_SUBMIT_FLAG_ABORT                            = 0x1,
+    AZ_SUBMIT_FLAG_FLUSH                            = 0x2,
     AZ_MAX_POLICY_URL_LENGTH                        = 65536,
     AZ_AZSTORE_FLAG_CREATE                          = 0x1,
     AZ_AZSTORE_FLAG_MANAGE_STORE_ONLY               = 0x2,
     AZ_AZSTORE_FLAG_BATCH_UPDATE                    = 0x4,
     AZ_AZSTORE_FLAG_AUDIT_IS_CRITICAL               = 0x8,
     AZ_AZSTORE_FORCE_APPLICATION_CLOSE              = 0x10,
+    AZ_AZSTORE_NT6_FUNCTION_LEVEL                   = 0x20,
+    AZ_AZSTORE_FLAG_MANAGE_ONLY_PASSIVE_SUBMIT      = 0x8000,
     AZ_PROP_AZSTORE_DOMAIN_TIMEOUT                  = 100,
     AZ_AZSTORE_DEFAULT_DOMAIN_TIMEOUT               = ( 15 * 1000 ),
     AZ_PROP_AZSTORE_SCRIPT_ENGINE_TIMEOUT           = 101,
@@ -2509,6 +2512,7 @@
     AZ_PROP_AZSTORE_MAJOR_VERSION                   = 103,
     AZ_PROP_AZSTORE_MINOR_VERSION                   = 104,
     AZ_PROP_AZSTORE_TARGET_MACHINE                  = 105,
+    AZ_PROP_AZTORE_IS_ADAM_INSTANCE                 = 106,
     AZ_PROP_OPERATION_ID                            = 200,
     AZ_PROP_TASK_OPERATIONS                         = 300,
     AZ_PROP_TASK_BIZRULE                            = 301,
@@ -2523,6 +2527,7 @@
     AZ_PROP_GROUP_TYPE                              = 400,
     AZ_GROUPTYPE_LDAP_QUERY                         = 1,
     AZ_GROUPTYPE_BASIC                              = 2,
+    AZ_GROUPTYPE_BIZRULE                            = 3,
     AZ_PROP_GROUP_APP_MEMBERS                       = 401,
     AZ_PROP_GROUP_APP_NON_MEMBERS                   = 402,
     AZ_PROP_GROUP_LDAP_QUERY                        = 403,
@@ -2531,6 +2536,12 @@
     AZ_PROP_GROUP_NON_MEMBERS                       = 405,
     AZ_PROP_GROUP_MEMBERS_NAME                      = 406,
     AZ_PROP_GROUP_NON_MEMBERS_NAME                  = 407,
+    AZ_PROP_GROUP_BIZRULE                           = 408,
+    AZ_PROP_GROUP_BIZRULE_LANGUAGE                  = 409,
+    AZ_PROP_GROUP_BIZRULE_IMPORTED_PATH             = 410,
+    AZ_MAX_GROUP_BIZRULE_LENGTH                     = 65536,
+    AZ_MAX_GROUP_BIZRULE_LANGUAGE_LENGTH            = 64,
+    AZ_MAX_GROUP_BIZRULE_IMPORTED_PATH_LENGTH       = 512,
     AZ_PROP_ROLE_APP_MEMBERS                        = 500,
     AZ_PROP_ROLE_MEMBERS                            = 501,
     AZ_PROP_ROLE_OPERATIONS                         = 502,
@@ -2551,6 +2562,7 @@
     AZ_PROP_APPLICATION_VERSION                     = 801,
     AZ_MAX_APPLICATION_VERSION_LENGTH               = 512,
     AZ_PROP_APPLICATION_NAME                        = 802,
+    AZ_PROP_APPLICATION_BIZRULE_ENABLED             = 803,
     AZ_PROP_APPLY_STORE_SACL                        = 900,
     AZ_PROP_GENERATE_AUDITS                         = 901,
     AZ_PROP_POLICY_ADMINS                           = 902,
@@ -2560,7 +2572,9 @@
     AZ_PROP_POLICY_READERS_NAME                     = 906,
     AZ_PROP_DELEGATED_POLICY_USERS_NAME             = 907,
     AZ_CLIENT_CONTEXT_SKIP_GROUP                    = 1,
-    AZ_CLIENT_CONTEXT_SKIP_LDAP_QUERY               = 1
+    AZ_CLIENT_CONTEXT_SKIP_LDAP_QUERY               = 1,
+    AZ_CLIENT_CONTEXT_GET_GROUP_RECURSIVE           = 2,
+    AZ_CLIENT_CONTEXT_GET_GROUPS_STORE_LEVEL_ONLY   = 2
   } AZ_PROP_CONSTANTS;
 
   EXTERN_C const IID LIBID_AZROLESLib;