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.
|
|
/*++
Copyright (c) 2001 Microsoft Corporation
Module Name :
common.hxx
Abstract:
Class's that are common, will be defined here
Author:
Christopher Achille (cachille)
Project:
Internet Services Setup
Revision History: August 2001: Created
--*/
#include "Aclapi.h"
// class: CIsUpgrade
//
// The class will tell you if you are in an upgrade, within the range you specify
//
class CIsUpgrade : public CBaseFunction { private: virtual BOOL VerifyParameters(CItemList &ciParams); virtual BOOL DoInternalWork(CItemList &ciList);
public: virtual LPTSTR GetMethodName(); };
// class: CFileSys_Acl
//
// This class gives you the common ACL commands
//
class CFileSys_Acl : public CBaseFunction { protected: BOOL AddAcetoSD( HANDLE hObject, // handle to object
SE_OBJECT_TYPE ObjectType, // type of object
LPTSTR pszTrustee, // trustee for new ACE
TRUSTEE_FORM TrusteeForm, // format of TRUSTEE structure
DWORD dwAccessRights, // access mask for new ACE
ACCESS_MODE AccessMode, // type of ACE
DWORD dwInheritance, // inheritance flags for new ACE
BOOL bAddToExisting // add the new ace to the old SD, if not create a new SD
); BOOL CreateFullFileName(BUFFER &buffFullFileName, LPTSTR szFullPathwithWildCard, LPTSTR szFileName); BOOL SetFileAcl(LPTSTR szFileName, LPTSTR szUserName, SE_OBJECT_TYPE sObjectType, DWORD dwAccessMask, BOOL bAllowAccess, DWORD dwInheritable, BOOL bAddAcetoOriginal); BOOL RemoveUserFromAcl(PACL pAcl, LPTSTR szUserName); BOOL RemoveUserAcl(LPTSTR szFile, LPTSTR szUserName); BOOL DoAcling(CItemList &ciList, BOOL bAdd, BOOL bAddtoOriginal = TRUE ); };
// class: CFileSys_AddAcl
//
// This class will let you modify an ACL
//
class CFileSys_AddAcl : public CFileSys_Acl { private: virtual BOOL VerifyParameters(CItemList &ciParams); virtual BOOL DoInternalWork(CItemList &ciList);
public: virtual LPTSTR GetMethodName(); };
// class: CFileSys_RemoveAcl
//
// This class remove acl's for files
//
class CFileSys_RemoveAcl : public CFileSys_Acl { private: virtual BOOL VerifyParameters(CItemList &ciParams); virtual BOOL DoInternalWork(CItemList &ciList);
public: virtual LPTSTR GetMethodName(); };
// class: CFileSys_SetAcl
//
// This class will let you set an ACL (ignoring previous ACL)
//
class CFileSys_SetAcl : public CFileSys_Acl { private: virtual BOOL VerifyParameters(CItemList &ciParams); virtual BOOL DoInternalWork(CItemList &ciList);
public: virtual LPTSTR GetMethodName(); };
|