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.

66 lines
1.4 KiB

  1. class CAccessControlEntry;
  2. class CAccessControlEntry : INHERIT_TRACKING,
  3. public ISupportErrorInfo,
  4. public IADsAccessControlEntry,
  5. public IADsAcePrivate
  6. {
  7. public:
  8. /* IUnknown methods */
  9. STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) ;
  10. DECLARE_STD_REFCOUNTING
  11. DECLARE_IDispatch_METHODS
  12. DECLARE_ISupportErrorInfo_METHODS
  13. DECLARE_IADsAccessControlEntry_METHODS
  14. CAccessControlEntry::CAccessControlEntry();
  15. CAccessControlEntry::~CAccessControlEntry();
  16. //
  17. // IADsAcePrivate methods.
  18. //
  19. STDMETHOD(getSid)(THIS_ PSID *pSid, DWORD *pdwLength);
  20. STDMETHOD(putSid)(THIS_ PSID pSid, DWORD dwLength);
  21. STDMETHOD(isSidValid)(THIS_ BOOL *pfSidValid);
  22. static
  23. HRESULT
  24. CAccessControlEntry::CreateAccessControlEntry(
  25. REFIID riid,
  26. void **ppvObj
  27. );
  28. static
  29. HRESULT
  30. CAccessControlEntry::AllocateAccessControlEntryObject(
  31. CAccessControlEntry ** ppAccessControlEntry
  32. );
  33. protected:
  34. CDispatchMgr FAR * _pDispMgr;
  35. DWORD _dwAccessMask;
  36. DWORD _dwAceFlags;
  37. DWORD _dwAceType;
  38. DWORD _dwFlags;
  39. LPWSTR _lpTrustee;
  40. LPWSTR _lpObjectType;
  41. LPWSTR _lpInheritedObjectType;
  42. PSID _pSid;
  43. DWORD _dwSidLen;
  44. };