aclapi.h 3.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. /*
  2. * Copyright (C) 2004 Mike McCormack
  3. *
  4. * This library is free software; you can redistribute it and/or
  5. * modify it under the terms of the GNU Lesser General Public
  6. * License as published by the Free Software Foundation; either
  7. * version 2.1 of the License, or (at your option) any later version.
  8. *
  9. * This library is distributed in the hope that it will be useful,
  10. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  12. * Lesser General Public License for more details.
  13. *
  14. * You should have received a copy of the GNU Lesser General Public
  15. * License along with this library; if not, write to the Free Software
  16. * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  17. */
  18. #ifndef __WINE_ACLAPI_H
  19. #define __WINE_ACLAPI_H
  20. #ifndef __WINESRC__
  21. # include <windows.h>
  22. #endif
  23. #include <accctrl.h>
  24. #ifdef __cplusplus
  25. extern "C" {
  26. #endif
  27. DWORD WINAPI GetSecurityInfo( HANDLE, SE_OBJECT_TYPE, SECURITY_INFORMATION,
  28. PSID*, PSID*, PACL*, PACL*, PSECURITY_DESCRIPTOR*);
  29. DWORD WINAPI GetNamedSecurityInfoA(LPSTR, SE_OBJECT_TYPE, SECURITY_INFORMATION,
  30. PSID*, PSID*, PACL*, PACL*, PSECURITY_DESCRIPTOR*);
  31. DWORD WINAPI GetNamedSecurityInfoW(LPWSTR, SE_OBJECT_TYPE, SECURITY_INFORMATION,
  32. PSID*, PSID*, PACL*, PACL*, PSECURITY_DESCRIPTOR*);
  33. #define GetNamedSecurityInfo WINELIB_NAME_AW(GetNamedSecurityInfo)
  34. DWORD WINAPI SetNamedSecurityInfoA(LPSTR, SE_OBJECT_TYPE,
  35. SECURITY_INFORMATION, PSID, PSID, PACL, PACL);
  36. DWORD WINAPI SetNamedSecurityInfoW(LPWSTR, SE_OBJECT_TYPE,
  37. SECURITY_INFORMATION, PSID, PSID, PACL, PACL);
  38. #define SetNamedSecurityInfo WINELIB_NAME_AW(SetNamedSecurityInfo)
  39. DWORD WINAPI SetEntriesInAclA( ULONG, PEXPLICIT_ACCESSA, PACL, PACL*);
  40. DWORD WINAPI SetEntriesInAclW( ULONG, PEXPLICIT_ACCESSW, PACL, PACL*);
  41. #define SetEntriesInAcl WINELIB_NAME_AW(SetEntriesInAcl)
  42. TRUSTEE_FORM WINAPI GetTrusteeFormA( PTRUSTEEA );
  43. TRUSTEE_FORM WINAPI GetTrusteeFormW( PTRUSTEEW );
  44. #define GetTrusteeForm WINELIB_NAME_AW(GetTrusteeForm)
  45. LPSTR WINAPI GetTrusteeNameA( PTRUSTEEA );
  46. LPWSTR WINAPI GetTrusteeNameW( PTRUSTEEW );
  47. #define GetTrusteeName WINELIB_NAME_AW(GetTrusteeName)
  48. TRUSTEE_TYPE WINAPI GetTrusteeTypeA( PTRUSTEEA );
  49. TRUSTEE_TYPE WINAPI GetTrusteeTypeW( PTRUSTEEW );
  50. #define GetTrusteeType WINELIB_NAME_AW(GetTrusteeType)
  51. void WINAPI BuildTrusteeWithNameA( PTRUSTEEA, LPSTR );
  52. void WINAPI BuildTrusteeWithNameW( PTRUSTEEW, LPWSTR );
  53. #define BuildTrusteeWithName WINELIB_NAME_AW(BuildTrusteeWithName)
  54. VOID WINAPI BuildTrusteeWithObjectsAndNameA(PTRUSTEEA, POBJECTS_AND_NAME_A,
  55. SE_OBJECT_TYPE, LPSTR, LPSTR, LPSTR);
  56. VOID WINAPI BuildTrusteeWithObjectsAndNameW(PTRUSTEEW, POBJECTS_AND_NAME_W,
  57. SE_OBJECT_TYPE, LPWSTR, LPWSTR, LPWSTR);
  58. #define BuildTrusteeWithObjectsAndName WINELIB_NAME_AW(BuildTrusteeWithObjectsAndName)
  59. VOID WINAPI BuildTrusteeWithObjectsAndSidA(PTRUSTEEA, POBJECTS_AND_SID, GUID*, GUID*, PSID);
  60. VOID WINAPI BuildTrusteeWithObjectsAndSidW(PTRUSTEEW, POBJECTS_AND_SID, GUID*, GUID*, PSID);
  61. #define BuildTrusteeWithObjectsAndSid WINELIB_NAME_AW(BuildTrusteeWithObjectsAndSid)
  62. VOID WINAPI BuildExplicitAccessWithNameA(PEXPLICIT_ACCESSA, LPSTR, DWORD, ACCESS_MODE, DWORD);
  63. VOID WINAPI BuildExplicitAccessWithNameW(PEXPLICIT_ACCESSW, LPWSTR, DWORD, ACCESS_MODE, DWORD);
  64. #define BuildExplicitAccessWithName WINELIB_NAME_AW(BuildExplicitAccessWithName)
  65. VOID WINAPI BuildTrusteeWithSidA(PTRUSTEEA pTrustee, PSID pSid);
  66. VOID WINAPI BuildTrusteeWithSidW(PTRUSTEEW pTrustee, PSID pSid);
  67. #define BuildTrusteeWithSid WINELIB_NAME_AW(BuildTrusteeWithSid)
  68. #ifdef __cplusplus
  69. }
  70. #endif
  71. #endif /* __WINE_ACLAPI_H */