Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

87 lines
2.0 KiB

  1. /////////////////////////////////////////////////////////////////////////////
  2. //
  3. // Copyright (c) 1996-1997 Microsoft Corporation
  4. //
  5. // Module Name:
  6. // EditAcl.h
  7. //
  8. // Abstract:
  9. // Definition of ACL editor methods.
  10. //
  11. // Author:
  12. // David Potter (davidp) October 10, 1996
  13. // From \nt\private\window\shell\lmui\ntshrui\acl.cxx
  14. // by BruceFo
  15. //
  16. // Revision History:
  17. //
  18. // Notes:
  19. //
  20. /////////////////////////////////////////////////////////////////////////////
  21. #ifndef _EDITACL_H_
  22. #define _EDITACL_H_
  23. LONG
  24. EditShareAcl(
  25. IN HWND hwndParent,
  26. IN LPCTSTR pszServerName,
  27. IN LPCTSTR pszShareName,
  28. IN LPCTSTR pszClusterNameNode,
  29. IN PSECURITY_DESCRIPTOR pSecDesc,
  30. OUT BOOL * pbSecDescModified,
  31. OUT PSECURITY_DESCRIPTOR * ppSecDesc
  32. );
  33. LONG
  34. CreateDefaultSecDesc(
  35. OUT PSECURITY_DESCRIPTOR* ppSecDesc
  36. );
  37. VOID
  38. DeleteDefaultSecDesc(
  39. IN PSECURITY_DESCRIPTOR pSecDesc
  40. );
  41. PSECURITY_DESCRIPTOR
  42. CopySecurityDescriptor(
  43. IN PSECURITY_DESCRIPTOR pSecDesc
  44. );
  45. //
  46. // Cluster API Specific Access Rights
  47. //
  48. #define SHARE_READ_ACCESS 0 //0x00000001L
  49. #define SHARE_CHANGE_ACCESS 0 //0x00000002L
  50. #define SHARE_NO_ACCESS 0 //0x00000004L
  51. #define SHARE_ALL_ACCESS (SHARE_READ_ACCESS | SHARE_CHANGE_ACCESS)
  52. //
  53. // Share General Permissions
  54. //
  55. #if 0
  56. #define FILE_PERM_NO_ACCESS (0)
  57. #define FILE_PERM_READ (STANDARD_RIGHTS_READ |\
  58. SHARE_READ_ACCESS)
  59. #define FILE_PERM_MODIFY (STANDARD_RIGHTS_WRITE |\
  60. SHARE_CHANGE_ACCESS)
  61. #define FILE_PERM_ALL (STANDARD_RIGHTS_ALL |\
  62. SHARE_ALL_ACCESS)
  63. #else
  64. #define FILE_PERM_NO_ACCESS (0)
  65. #define FILE_PERM_READ (GENERIC_READ |\
  66. GENERIC_EXECUTE)
  67. #define FILE_PERM_MODIFY (GENERIC_READ |\
  68. GENERIC_EXECUTE |\
  69. GENERIC_WRITE |\
  70. DELETE )
  71. #define FILE_PERM_ALL (GENERIC_ALL)
  72. #endif
  73. /////////////////////////////////////////////////////////////////////////////
  74. #endif // _EDITACL_H_