Diff

Not logged in

Differences From Artifact [dc98e950dc2783b3]:

To Artifact [c097a51ee1c3b3d3]:


5 * * 5 * * 6 * Translated from MinGW Windows headers * 6 * Translated from MinGW Windows headers * 7 * by Stewart Gordon * 7 * by Stewart Gordon * 8 * * 8 * * 9 * Placed into public domain * 9 * Placed into public domain * 10 \***********************************************************************/ 10 \***********************************************************************/ 11 module win32.aclapi; 11 module win32.aclapi; 12 pragma(lib, "advapi32.lib"); | 12 pragma(lib, "advapi32"); 13 13 14 import win32.windows, win32.accctrl; 14 import win32.windows, win32.accctrl; 15 15 16 static assert (_WIN32_WINNT_ONLY, < 17 "win32.aclapi is available only if version WindowsNTonly, WindowsXP, " < 18 "Windows2003 or WindowsVista is set"); < 19 < 20 extern (Windows) { 16 extern (Windows) { 21 VOID BuildExplicitAccessWithNameA(PEXPLICIT_ACCESS_A, LPSTR, DWORD, 17 VOID BuildExplicitAccessWithNameA(PEXPLICIT_ACCESS_A, LPSTR, DWORD, 22 ACCESS_MODE, DWORD); 18 ACCESS_MODE, DWORD); 23 VOID BuildExplicitAccessWithNameW(PEXPLICIT_ACCESS_W, LPWSTR, DWORD, 19 VOID BuildExplicitAccessWithNameW(PEXPLICIT_ACCESS_W, LPWSTR, DWORD, 24 ACCESS_MODE, DWORD); 20 ACCESS_MODE, DWORD); 25 DWORD BuildSecurityDescriptorA(PTRUSTEE_A, PTRUSTEE_A , ULONG, 21 DWORD BuildSecurityDescriptorA(PTRUSTEE_A, PTRUSTEE_A , ULONG, 26 PEXPLICIT_ACCESS_A, ULONG, PEXPLICIT_ACCESS_A, PSECURITY_DESCRIPTOR, 22 PEXPLICIT_ACCESS_A, ULONG, PEXPLICIT_ACCESS_A, PSECURITY_DESCRIPTOR, ................................................................................................................................................................................ 44 PACCESS_MASK); 40 PACCESS_MASK); 45 DWORD GetAuditedPermissionsFromAclW(PACL, PTRUSTEE_W, PACCESS_MASK, 41 DWORD GetAuditedPermissionsFromAclW(PACL, PTRUSTEE_W, PACCESS_MASK, 46 PACCESS_MASK); 42 PACCESS_MASK); 47 DWORD GetEffectiveRightsFromAclA(PACL, PTRUSTEE_A, PACCESS_MASK); 43 DWORD GetEffectiveRightsFromAclA(PACL, PTRUSTEE_A, PACCESS_MASK); 48 DWORD GetEffectiveRightsFromAclW(PACL, PTRUSTEE_W, PACCESS_MASK); 44 DWORD GetEffectiveRightsFromAclW(PACL, PTRUSTEE_W, PACCESS_MASK); 49 DWORD GetExplicitEntriesFromAclA(PACL, PULONG, PEXPLICIT_ACCESS_A*); 45 DWORD GetExplicitEntriesFromAclA(PACL, PULONG, PEXPLICIT_ACCESS_A*); 50 DWORD GetExplicitEntriesFromAclW(PACL, PULONG, PEXPLICIT_ACCESS_W*); 46 DWORD GetExplicitEntriesFromAclW(PACL, PULONG, PEXPLICIT_ACCESS_W*); 51 static if (WINVER >= 0x501) { | 47 static if (_WIN32_WINNT >= 0x501) { 52 DWORD GetInheritanceSourceA(LPSTR, SE_OBJECT_TYPE, 48 DWORD GetInheritanceSourceA(LPSTR, SE_OBJECT_TYPE, 53 SECURITY_INFORMATION, BOOL, GUID**, DWORD, PACL, void*, 49 SECURITY_INFORMATION, BOOL, GUID**, DWORD, PACL, void*, 54 PGENERIC_MAPPING, PINHERITED_FROMA); 50 PGENERIC_MAPPING, PINHERITED_FROMA); 55 DWORD GetInheritanceSourceW(LPWSTR, SE_OBJECT_TYPE, 51 DWORD GetInheritanceSourceW(LPWSTR, SE_OBJECT_TYPE, 56 SECURITY_INFORMATION, BOOL, GUID**, DWORD, PACL, void*, 52 SECURITY_INFORMATION, BOOL, GUID**, DWORD, PACL, void*, 57 PGENERIC_MAPPING, PINHERITED_FROMW); 53 PGENERIC_MAPPING, PINHERITED_FROMW); 58 } 54 }