using System; using System.Security.Principal; namespace System.Security.AccessControl { /// Represents a Discretionary Access Control List (DACL). // Token: 0x020004BC RID: 1212 public sealed class DiscretionaryAcl : CommonAcl { /// Initializes a new instance of the class with the specified values. /// true if the new object is a container. /// true if the new object is a directory object Access Control List (ACL). /// The number of Access Control Entries (ACEs) this object can contain. This number is to be used only as a hint. // Token: 0x06002D29 RID: 11561 RVA: 0x000936F4 File Offset: 0x000918F4 public DiscretionaryAcl(bool isContainer, bool isDS, int capacity) : this(isContainer, isDS, 0, capacity) { throw new NotImplementedException(); } /// Initializes a new instance of the class with the specified values from the specified object. /// true if the new object is a container. /// true if the new object is a directory object Access Control List (ACL). /// The underlying object for the new object. Specify null to create an empty ACL. // Token: 0x06002D2A RID: 11562 RVA: 0x00093708 File Offset: 0x00091908 public DiscretionaryAcl(bool isContainer, bool isDS, RawAcl rawAcl) : base(isContainer, isDS, 0) { } /// Initializes a new instance of the class with the specified values. /// true if the new object is a container. /// true if the new object is a directory object Access Control List (ACL). /// The revision level of the new object. /// The number of Access Control Entries (ACEs) this object can contain. This number is to be used only as a hint. // Token: 0x06002D2B RID: 11563 RVA: 0x00093714 File Offset: 0x00091914 public DiscretionaryAcl(bool isContainer, bool isDS, byte revision, int capacity) : base(isContainer, isDS, revision, capacity) { } /// Adds an Access Control Entry (ACE) with the specified settings to the current object. /// The type of access control (allow or deny) to add. /// The for which to add an ACE. /// The access rule for the new ACE. /// Flags that specify the inheritance properties of the new ACE. /// Flags that specify the inheritance propagation properties for the new ACE. // Token: 0x06002D2C RID: 11564 RVA: 0x00093724 File Offset: 0x00091924 public void AddAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags) { throw new NotImplementedException(); } /// Adds an Access Control Entry (ACE) with the specified settings to the current object. Use this method for directory object Access Control Lists (ACLs) when specifying the object type or the inherited object type for the new ACE. /// The type of access control (allow or deny) to add. /// The for which to add an ACE. /// The access rule for the new ACE. /// Flags that specify the inheritance properties of the new ACE. /// Flags that specify the inheritance propagation properties for the new ACE. /// Flags that specify if the and parameters contain non-null values. /// The identity of the class of objects to which the new ACE applies. /// The identity of the class of child objects which can inherit the new ACE. // Token: 0x06002D2D RID: 11565 RVA: 0x0009372C File Offset: 0x0009192C public void AddAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType) { throw new NotImplementedException(); } /// Removes the specified access control rule from the current object. /// true if this method successfully removes the specified access; otherwise, false. /// The type of access control (allow or deny) to remove. /// The for which to remove an access control rule. /// The access mask for the rule to be removed. /// Flags that specify the inheritance properties of the rule to be removed. /// Flags that specify the inheritance propagation properties for the rule to be removed. // Token: 0x06002D2E RID: 11566 RVA: 0x00093734 File Offset: 0x00091934 public bool RemoveAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags) { throw new NotImplementedException(); } /// Removes the specified access control rule from the current object. Use this method for directory object Access Control Lists (ACLs) when specifying the object type or the inherited object type. /// true if this method successfully removes the specified access; otherwise, false. /// The type of access control (allow or deny) to remove. /// The for which to remove an access control rule. /// The access mask for the access control rule to be removed. /// Flags that specify the inheritance properties of the access control rule to be removed. /// Flags that specify the inheritance propagation properties for the access control rule to be removed. /// Flags that specify if the and parameters contain non-null values. /// The identity of the class of objects to which the removed access control rule applies. /// The identity of the class of child objects which can inherit the removed access control rule. // Token: 0x06002D2F RID: 11567 RVA: 0x0009373C File Offset: 0x0009193C public bool RemoveAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType) { throw new NotImplementedException(); } /// Removes the specified Access Control Entry (ACE) from the current object. /// The type of access control (allow or deny) to remove. /// The for which to remove an ACE. /// The access mask for the ACE to be removed. /// Flags that specify the inheritance properties of the ACE to be removed. /// Flags that specify the inheritance propagation properties for the ACE to be removed. // Token: 0x06002D30 RID: 11568 RVA: 0x00093744 File Offset: 0x00091944 public void RemoveAccessSpecific(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags) { throw new NotImplementedException(); } /// Removes the specified Access Control Entry (ACE) from the current object. Use this method for directory object Access Control Lists (ACLs) when specifying the object type or the inherited object type for the ACE to be removed. /// The type of access control (allow or deny) to remove. /// The for which to remove an ACE. /// The access mask for the ACE to be removed. /// Flags that specify the inheritance properties of the ACE to be removed. /// Flags that specify the inheritance propagation properties for the ACE to be removed. /// Flags that specify if the and parameters contain non-null values. /// The identity of the class of objects to which the removed ACE applies. /// The identity of the class of child objects which can inherit the removed ACE. // Token: 0x06002D31 RID: 11569 RVA: 0x0009374C File Offset: 0x0009194C public void RemoveAccessSpecific(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType) { throw new NotImplementedException(); } /// Sets the specified access control for the specified object. /// The type of access control (allow or deny) to set. /// The for which to set an ACE. /// The access rule for the new ACE. /// Flags that specify the inheritance properties of the new ACE. /// Flags that specify the inheritance propagation properties for the new ACE. // Token: 0x06002D32 RID: 11570 RVA: 0x00093754 File Offset: 0x00091954 public void SetAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags) { throw new NotImplementedException(); } /// Sets the specified access control for the specified object. /// The type of access control (allow or deny) to set. /// The for which to set an ACE. /// The access rule for the new ACE. /// Flags that specify the inheritance properties of the new ACE. /// Flags that specify the inheritance propagation properties for the new ACE. /// Flags that specify if the and parameters contain non-null values. /// The identity of the class of objects to which the new ACE applies. /// The identity of the class of child objects which can inherit the new ACE. // Token: 0x06002D33 RID: 11571 RVA: 0x0009375C File Offset: 0x0009195C public void SetAccess(AccessControlType accessType, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType) { throw new NotImplementedException(); } } }