[PSDK]
authorAmine Khaldi <amine.khaldi@reactos.org>
Sat, 2 Mar 2013 20:40:44 +0000 (20:40 +0000)
committerAmine Khaldi <amine.khaldi@reactos.org>
Sat, 2 Mar 2013 20:40:44 +0000 (20:40 +0000)
* Annotate aclapi.h.

svn path=/trunk/; revision=58407

reactos/include/psdk/aclapi.h

index 4b3b5e1..ad78bb7 100644 (file)
 extern "C" {
 #endif
 
-VOID WINAPI BuildExplicitAccessWithNameA(PEXPLICIT_ACCESS_A,LPSTR,DWORD,ACCESS_MODE,DWORD);
-VOID WINAPI BuildExplicitAccessWithNameW(PEXPLICIT_ACCESS_W,LPWSTR,DWORD,ACCESS_MODE,DWORD);
-DWORD WINAPI BuildSecurityDescriptorA(PTRUSTEE_A,PTRUSTEE_A ,ULONG,PEXPLICIT_ACCESS_A,
-  ULONG,PEXPLICIT_ACCESS_A,PSECURITY_DESCRIPTOR,PULONG,PSECURITY_DESCRIPTOR*);
-DWORD WINAPI BuildSecurityDescriptorW(PTRUSTEE_W,PTRUSTEE_W ,ULONG,PEXPLICIT_ACCESS_W,
-  ULONG,PEXPLICIT_ACCESS_W,PSECURITY_DESCRIPTOR,PULONG,PSECURITY_DESCRIPTOR*);
-VOID WINAPI BuildTrusteeWithNameA(PTRUSTEE_A,LPSTR);
-VOID WINAPI BuildTrusteeWithNameW(PTRUSTEE_W,LPWSTR);
-VOID WINAPI BuildTrusteeWithObjectsAndNameA(PTRUSTEE_A,POBJECTS_AND_NAME_A,SE_OBJECT_TYPE,
-  LPSTR,LPSTR,LPSTR);
-VOID WINAPI BuildTrusteeWithObjectsAndNameW(PTRUSTEE_W,POBJECTS_AND_NAME_W,SE_OBJECT_TYPE,
-  LPWSTR,LPWSTR,LPWSTR);
-VOID WINAPI BuildTrusteeWithObjectsAndSidA(PTRUSTEE_A,POBJECTS_AND_SID,GUID*,GUID*,PSID);
-VOID WINAPI BuildTrusteeWithObjectsAndSidW(PTRUSTEE_W,POBJECTS_AND_SID,GUID*,GUID*,PSID);
-VOID WINAPI BuildTrusteeWithSidA(PTRUSTEE_A,PSID);
-VOID WINAPI BuildTrusteeWithSidW(PTRUSTEE_W,PSID);
+VOID WINAPI BuildExplicitAccessWithNameA(_Inout_ PEXPLICIT_ACCESS_A, _In_opt_ LPSTR, _In_ DWORD, _In_ ACCESS_MODE, _In_ DWORD);
+VOID WINAPI BuildExplicitAccessWithNameW(_Inout_ PEXPLICIT_ACCESS_W, _In_opt_ LPWSTR, _In_ DWORD, _In_ ACCESS_MODE, _In_ DWORD);
+
+DWORD
+WINAPI
+BuildSecurityDescriptorA(
+  _In_opt_ PTRUSTEE_A pOwner,
+  _In_opt_ PTRUSTEE_A pGroup,
+  _In_ ULONG cCountOfAccessEntries,
+  _In_reads_opt_(cCountOfAccessEntries) PEXPLICIT_ACCESS_A pListOfAccessEntries,
+  _In_ ULONG cCountOfAuditEntries,
+  _In_reads_opt_(cCountOfAuditEntries) PEXPLICIT_ACCESS_A pListOfAuditEntries,
+  _In_opt_ PSECURITY_DESCRIPTOR pOldSD,
+  _Out_ PULONG pSizeNewSD,
+  _Outptr_result_bytebuffer_(*pSizeNewSD) PSECURITY_DESCRIPTOR *pNewSD);
+
+DWORD
+WINAPI
+BuildSecurityDescriptorW(
+  _In_opt_ PTRUSTEE_W pOwner,
+  _In_opt_ PTRUSTEE_W pGroup,
+  _In_ ULONG cCountOfAccessEntries,
+  _In_reads_opt_(cCountOfAccessEntries) PEXPLICIT_ACCESS_W pListOfAccessEntries,
+  _In_ ULONG cCountOfAuditEntries,
+  _In_reads_opt_(cCountOfAuditEntries) PEXPLICIT_ACCESS_W pListOfAuditEntries,
+  _In_opt_ PSECURITY_DESCRIPTOR pOldSD,
+  _Out_ PULONG pSizeNewSD,
+  _Outptr_result_bytebuffer_(*pSizeNewSD) PSECURITY_DESCRIPTOR *pNewSD);
+
+VOID WINAPI BuildTrusteeWithNameA(_Inout_ PTRUSTEE_A, _In_opt_ LPSTR);
+VOID WINAPI BuildTrusteeWithNameW(_Inout_ PTRUSTEE_W, _In_opt_ LPWSTR);
+VOID WINAPI BuildTrusteeWithObjectsAndNameA(_Inout_ PTRUSTEE_A, _In_opt_ POBJECTS_AND_NAME_A, _In_opt_ SE_OBJECT_TYPE, _In_opt_ LPSTR, _In_opt_ LPSTR, _In_opt_ LPSTR);
+VOID WINAPI BuildTrusteeWithObjectsAndNameW(_Inout_ PTRUSTEE_W, _In_opt_ POBJECTS_AND_NAME_W, _In_opt_ SE_OBJECT_TYPE, _In_opt_ LPWSTR, _In_opt_ LPWSTR, _In_opt_ LPWSTR);
+VOID WINAPI BuildTrusteeWithObjectsAndSidA(_Inout_ PTRUSTEE_A, _In_opt_ POBJECTS_AND_SID, _In_opt_ GUID*, _In_opt_ GUID*, _In_opt_ PSID);
+VOID WINAPI BuildTrusteeWithObjectsAndSidW(_Inout_ PTRUSTEE_W, _In_opt_ POBJECTS_AND_SID, _In_opt_ GUID*, _In_opt_ GUID*, _In_opt_ PSID);
+VOID WINAPI BuildTrusteeWithSidA(_Inout_ PTRUSTEE_A, _In_opt_ PSID);
+VOID WINAPI BuildTrusteeWithSidW(_Inout_ PTRUSTEE_W, _In_opt_ PSID);
+
 #if (_WIN32_WINNT >= 0x0501)
-DWORD WINAPI FreeInheritedFromArray(PINHERITED_FROMW,USHORT,PFN_OBJECT_MGR_FUNCTS);
+DWORD
+WINAPI
+FreeInheritedFromArray(
+  _In_reads_(AceCnt) PINHERITED_FROMW pInheritArray,
+  _In_ USHORT AceCnt,
+  _In_opt_ PFN_OBJECT_MGR_FUNCTS pfnArray);
 #endif
-DWORD WINAPI GetAuditedPermissionsFromAclA(PACL,PTRUSTEE_A,PACCESS_MASK,PACCESS_MASK);
-DWORD WINAPI GetAuditedPermissionsFromAclW(PACL,PTRUSTEE_W,PACCESS_MASK,PACCESS_MASK);
-DWORD WINAPI GetEffectiveRightsFromAclA(PACL,PTRUSTEE_A,PACCESS_MASK);
-DWORD WINAPI GetEffectiveRightsFromAclW(PACL,PTRUSTEE_W,PACCESS_MASK);
-DWORD WINAPI GetExplicitEntriesFromAclA(PACL,PULONG,PEXPLICIT_ACCESS_A*);
-DWORD WINAPI GetExplicitEntriesFromAclW(PACL,PULONG,PEXPLICIT_ACCESS_W*);
+
+DWORD WINAPI GetAuditedPermissionsFromAclA(_In_ PACL, _In_ PTRUSTEE_A, _Out_ PACCESS_MASK, _Out_ PACCESS_MASK);
+DWORD WINAPI GetAuditedPermissionsFromAclW(_In_ PACL, _In_ PTRUSTEE_W, _Out_ PACCESS_MASK, _Out_ PACCESS_MASK);
+DWORD WINAPI GetEffectiveRightsFromAclA(_In_ PACL, _In_ PTRUSTEE_A, _Out_ PACCESS_MASK);
+DWORD WINAPI GetEffectiveRightsFromAclW(_In_ PACL, _In_ PTRUSTEE_W, _Out_ PACCESS_MASK);
+
+DWORD
+WINAPI
+GetExplicitEntriesFromAclA(
+  _In_ PACL pacl,
+  _Out_ PULONG pcCountOfExplicitEntries,
+  _Outptr_result_buffer_(*pcCountOfExplicitEntries) PEXPLICIT_ACCESS_A *pListOfExplicitEntries);
+
+DWORD
+WINAPI
+GetExplicitEntriesFromAclW(
+  _In_ PACL pacl,
+  _Out_ PULONG pcCountOfExplicitEntries,
+  _Outptr_result_buffer_(*pcCountOfExplicitEntries) PEXPLICIT_ACCESS_W *pListOfExplicitEntries);
+
 #if (_WIN32_WINNT >= 0x0501)
-DWORD WINAPI GetInheritanceSourceA(LPSTR,SE_OBJECT_TYPE,SECURITY_INFORMATION,BOOL,GUID**,DWORD,PACL,PFN_OBJECT_MGR_FUNCTS,PGENERIC_MAPPING,PINHERITED_FROMA);
-DWORD WINAPI GetInheritanceSourceW(LPWSTR,SE_OBJECT_TYPE,SECURITY_INFORMATION,BOOL,GUID**,DWORD,PACL,PFN_OBJECT_MGR_FUNCTS,PGENERIC_MAPPING,PINHERITED_FROMW);
+
+DWORD
+WINAPI
+GetInheritanceSourceA(
+  _In_ LPSTR pObjectName,
+  _In_ SE_OBJECT_TYPE ObjectType,
+  _In_ SECURITY_INFORMATION SecurityInfo,
+  _In_ BOOL Container,
+  _In_reads_opt_(GuidCount) GUID **pObjectClassGuids,
+  _In_ DWORD GuidCount,
+  _In_ PACL pAcl,
+  _In_opt_ PFN_OBJECT_MGR_FUNCTS pfnArray,
+  _In_ PGENERIC_MAPPING pGenericMapping,
+  _Out_ PINHERITED_FROMA pInheritArray);
+
+DWORD
+WINAPI
+GetInheritanceSourceW(
+  _In_ LPWSTR pObjectName,
+  _In_ SE_OBJECT_TYPE ObjectType,
+  _In_ SECURITY_INFORMATION SecurityInfo,
+  _In_ BOOL Container,
+  _In_reads_opt_(GuidCount) GUID **pObjectClassGuids,
+  _In_ DWORD GuidCount,
+  _In_ PACL pAcl,
+  _In_opt_ PFN_OBJECT_MGR_FUNCTS pfnArray,
+  _In_ PGENERIC_MAPPING pGenericMapping,
+  _Out_ PINHERITED_FROMW pInheritArray);
+
 #endif
-DWORD WINAPI GetNamedSecurityInfoA(LPSTR,SE_OBJECT_TYPE,SECURITY_INFORMATION,
-  PSID*,PSID*,PACL*,PACL*,PSECURITY_DESCRIPTOR*);
-DWORD WINAPI GetNamedSecurityInfoW(LPWSTR,SE_OBJECT_TYPE,SECURITY_INFORMATION,
-  PSID*,PSID*,PACL*,PACL*,PSECURITY_DESCRIPTOR*);
-DWORD WINAPI GetSecurityInfo(HANDLE,SE_OBJECT_TYPE,SECURITY_INFORMATION,
-  PSID*,PSID*,PACL*,PACL*,PSECURITY_DESCRIPTOR*);
-TRUSTEE_FORM WINAPI GetTrusteeFormA(PTRUSTEE_A);
-TRUSTEE_FORM WINAPI GetTrusteeFormW(PTRUSTEE_W);
-LPSTR WINAPI GetTrusteeNameA(PTRUSTEE_A);
-LPWSTR WINAPI GetTrusteeNameW(PTRUSTEE_W);
-TRUSTEE_TYPE WINAPI GetTrusteeTypeA(PTRUSTEE_A);
-TRUSTEE_TYPE WINAPI GetTrusteeTypeW(PTRUSTEE_W);
-DWORD WINAPI LookupSecurityDescriptorPartsA(PTRUSTEE_A*,PTRUSTEE_A*,PULONG,PEXPLICIT_ACCESS_A*,
-  PULONG,PEXPLICIT_ACCESS_A*,PSECURITY_DESCRIPTOR);
-DWORD WINAPI LookupSecurityDescriptorPartsW(PTRUSTEE_W*,PTRUSTEE_W*,PULONG,PEXPLICIT_ACCESS_W*,
-  PULONG,PEXPLICIT_ACCESS_W*,PSECURITY_DESCRIPTOR);
-DWORD WINAPI SetEntriesInAclA(ULONG,PEXPLICIT_ACCESS_A,PACL,PACL*);
-DWORD WINAPI SetEntriesInAclW(ULONG,PEXPLICIT_ACCESS_W,PACL,PACL*);
-DWORD WINAPI SetNamedSecurityInfoA(LPSTR,SE_OBJECT_TYPE,SECURITY_INFORMATION,PSID,PSID,PACL,PACL);
-DWORD WINAPI SetNamedSecurityInfoW(LPWSTR,SE_OBJECT_TYPE,SECURITY_INFORMATION,PSID,PSID,PACL,PACL);
-DWORD WINAPI SetSecurityInfo(HANDLE,SE_OBJECT_TYPE,SECURITY_INFORMATION,PSID,PSID,PACL,PACL);
-VOID WINAPI BuildImpersonateExplicitAccessWithNameA(PEXPLICIT_ACCESS_A,LPSTR,PTRUSTEE_A,DWORD,ACCESS_MODE,DWORD);
-VOID WINAPI BuildImpersonateExplicitAccessWithNameW(PEXPLICIT_ACCESS_W,LPWSTR,PTRUSTEE_W,DWORD,ACCESS_MODE,DWORD);
-VOID WINAPI BuildImpersonateTrusteeA(PTRUSTEE_A,PTRUSTEE_A);
-VOID WINAPI BuildImpersonateTrusteeW(PTRUSTEE_W,PTRUSTEE_W);
-PTRUSTEE_A WINAPI GetMultipleTrusteeA(PTRUSTEE_A);
-PTRUSTEE_W WINAPI GetMultipleTrusteeW(PTRUSTEE_W);
-MULTIPLE_TRUSTEE_OPERATION WINAPI GetMultipleTrusteeOperationA(PTRUSTEE_A);
-MULTIPLE_TRUSTEE_OPERATION WINAPI GetMultipleTrusteeOperationW(PTRUSTEE_W);
+
+DWORD
+WINAPI
+GetNamedSecurityInfoA(
+  _In_ LPSTR pObjectName,
+  _In_ SE_OBJECT_TYPE ObjectType,
+  _In_ SECURITY_INFORMATION SecurityInfo,
+  _Out_opt_ PSID *ppsidOwner,
+  _Out_opt_ PSID *ppsidGroup,
+  _Out_opt_ PACL *ppDacl,
+  _Out_opt_ PACL *ppSacl,
+  _Out_ PSECURITY_DESCRIPTOR *ppSecurityDescriptor);
+
+DWORD
+WINAPI
+GetNamedSecurityInfoW(
+  _In_ LPWSTR pObjectName,
+  _In_ SE_OBJECT_TYPE ObjectType,
+  _In_ SECURITY_INFORMATION SecurityInfo,
+  _Out_opt_ PSID *ppsidOwner,
+  _Out_opt_ PSID *ppsidGroup,
+  _Out_opt_ PACL *ppDacl,
+  _Out_opt_ PACL *ppSacl,
+  _Out_ PSECURITY_DESCRIPTOR *ppSecurityDescriptor);
+
+DWORD
+WINAPI
+GetSecurityInfo(
+  _In_ HANDLE handle,
+  _In_ SE_OBJECT_TYPE ObjectType,
+  _In_ SECURITY_INFORMATION SecurityInfo,
+  _Out_opt_ PSID *ppsidOwner,
+  _Out_opt_ PSID *ppsidGroup,
+  _Out_opt_ PACL *ppDacl,
+  _Out_opt_ PACL *ppSacl,
+  _Out_opt_ PSECURITY_DESCRIPTOR *ppSecurityDescriptor);
+
+TRUSTEE_FORM WINAPI GetTrusteeFormA(_In_ PTRUSTEE_A);
+TRUSTEE_FORM WINAPI GetTrusteeFormW(_In_ PTRUSTEE_W);
+LPSTR WINAPI GetTrusteeNameA(_In_ PTRUSTEE_A);
+LPWSTR WINAPI GetTrusteeNameW(_In_ PTRUSTEE_W);
+TRUSTEE_TYPE WINAPI GetTrusteeTypeA(_In_opt_ PTRUSTEE_A);
+TRUSTEE_TYPE WINAPI GetTrusteeTypeW(_In_opt_ PTRUSTEE_W);
+
+DWORD
+WINAPI
+LookupSecurityDescriptorPartsA(
+  _Out_opt_ PTRUSTEE_A *ppOwner,
+  _Out_opt_ PTRUSTEE_A *ppGroup,
+  _Out_opt_ PULONG pcCountOfAccessEntries,
+  _Outptr_result_buffer_maybenull_(*pcCountOfAccessEntries) PEXPLICIT_ACCESS_A *ppListOfAccessEntries,
+  _Out_opt_ PULONG pcCountOfAuditEntries,
+  _Outptr_result_buffer_maybenull_(*pcCountOfAuditEntries) PEXPLICIT_ACCESS_A *ppListOfAuditEntries,
+  _In_ PSECURITY_DESCRIPTOR pSD);
+
+DWORD
+WINAPI
+LookupSecurityDescriptorPartsW(
+  _Out_opt_ PTRUSTEE_W *ppOwner,
+  _Out_opt_ PTRUSTEE_W *ppGroup,
+  _Out_opt_ PULONG pcCountOfAccessEntries,
+  _Outptr_result_buffer_maybenull_(*pcCountOfAccessEntries) PEXPLICIT_ACCESS_W *ppListOfAccessEntries,
+  _Out_opt_ PULONG pcCountOfAuditEntries,
+  _Outptr_result_buffer_maybenull_(*pcCountOfAuditEntries) PEXPLICIT_ACCESS_W *ppListOfAuditEntries,
+  _In_ PSECURITY_DESCRIPTOR pSD);
+
+DWORD
+WINAPI
+SetEntriesInAclA(
+  _In_ ULONG cCountOfExplicitEntries,
+  _In_reads_opt_(cCountOfExplicitEntries) PEXPLICIT_ACCESS_A pListOfExplicitEntries,
+  _In_opt_ PACL OldAcl,
+  _Out_ PACL *NewAcl);
+
+DWORD
+WINAPI
+SetEntriesInAclW(
+  _In_ ULONG cCountOfExplicitEntries,
+  _In_reads_opt_(cCountOfExplicitEntries) PEXPLICIT_ACCESS_W pListOfExplicitEntries,
+  _In_opt_ PACL OldAcl,
+  _Out_ PACL *NewAcl);
+
+DWORD WINAPI SetNamedSecurityInfoA(_In_ LPSTR, _In_ SE_OBJECT_TYPE, _In_ SECURITY_INFORMATION, _In_opt_ PSID, _In_opt_ PSID, _In_opt_ PACL, _In_opt_ PACL);
+DWORD WINAPI SetNamedSecurityInfoW(_In_ LPWSTR, _In_ SE_OBJECT_TYPE, _In_ SECURITY_INFORMATION, _In_opt_ PSID, _In_opt_ PSID, _In_opt_ PACL, _In_opt_ PACL);
+DWORD WINAPI SetSecurityInfo(_In_ HANDLE, _In_ SE_OBJECT_TYPE, _In_ SECURITY_INFORMATION, _In_opt_ PSID, _In_opt_ PSID, _In_opt_ PACL, _In_opt_ PACL);
+VOID WINAPI BuildImpersonateExplicitAccessWithNameA(_Inout_ PEXPLICIT_ACCESS_A, _In_opt_ LPSTR, _In_opt_ PTRUSTEE_A, _In_ DWORD, _In_ ACCESS_MODE, _In_ DWORD);
+VOID WINAPI BuildImpersonateExplicitAccessWithNameW(_Inout_ PEXPLICIT_ACCESS_W, _In_opt_ LPWSTR, _In_opt_ PTRUSTEE_W, _In_ DWORD, _In_ ACCESS_MODE, _In_ DWORD);
+VOID WINAPI BuildImpersonateTrusteeA(_Inout_ PTRUSTEE_A, _In_opt_ PTRUSTEE_A);
+VOID WINAPI BuildImpersonateTrusteeW(_Inout_ PTRUSTEE_W, _In_opt_ PTRUSTEE_W);
+PTRUSTEE_A WINAPI GetMultipleTrusteeA(_In_opt_ PTRUSTEE_A);
+PTRUSTEE_W WINAPI GetMultipleTrusteeW(_In_opt_ PTRUSTEE_W);
+MULTIPLE_TRUSTEE_OPERATION WINAPI GetMultipleTrusteeOperationA(_In_opt_ PTRUSTEE_A);
+MULTIPLE_TRUSTEE_OPERATION WINAPI GetMultipleTrusteeOperationW(_In_opt_ PTRUSTEE_W);
 
 #ifdef UNICODE
 #define BuildExplicitAccessWithName  BuildExplicitAccessWithNameW