Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
SystemAcl.cs
Go to the documentation of this file.
2
4
5public sealed class SystemAcl : CommonAcl
6{
7 public SystemAcl(bool isContainer, bool isDS, int capacity)
8 : this(isContainer, isDS, isDS ? GenericAcl.AclRevisionDS : GenericAcl.AclRevision, capacity)
9 {
10 }
11
12 public SystemAcl(bool isContainer, bool isDS, byte revision, int capacity)
13 : base(isContainer, isDS, revision, capacity)
14 {
15 }
16
17 public SystemAcl(bool isContainer, bool isDS, RawAcl rawAcl)
18 : this(isContainer, isDS, rawAcl, trusted: false)
19 {
20 }
21
22 internal SystemAcl(bool isContainer, bool isDS, RawAcl rawAcl, bool trusted)
23 : base(isContainer, isDS, rawAcl, trusted, isDacl: false)
24 {
25 }
26
27 public void AddAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags)
28 {
29 CheckFlags(inheritanceFlags, propagationFlags);
30 AddQualifiedAce(sid, AceQualifier.SystemAudit, accessMask, GenericAce.AceFlagsFromAuditFlags(auditFlags) | GenericAce.AceFlagsFromInheritanceFlags(inheritanceFlags, propagationFlags), ObjectAceFlags.None, Guid.Empty, Guid.Empty);
31 }
32
33 public void SetAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags)
34 {
35 CheckFlags(inheritanceFlags, propagationFlags);
36 SetQualifiedAce(sid, AceQualifier.SystemAudit, accessMask, GenericAce.AceFlagsFromAuditFlags(auditFlags) | GenericAce.AceFlagsFromInheritanceFlags(inheritanceFlags, propagationFlags), ObjectAceFlags.None, Guid.Empty, Guid.Empty);
37 }
38
39 public bool RemoveAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags)
40 {
41 return RemoveQualifiedAces(sid, AceQualifier.SystemAudit, accessMask, GenericAce.AceFlagsFromAuditFlags(auditFlags) | GenericAce.AceFlagsFromInheritanceFlags(inheritanceFlags, propagationFlags), saclSemantics: true, ObjectAceFlags.None, Guid.Empty, Guid.Empty);
42 }
43
44 public void RemoveAuditSpecific(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags)
45 {
46 RemoveQualifiedAcesSpecific(sid, AceQualifier.SystemAudit, accessMask, GenericAce.AceFlagsFromAuditFlags(auditFlags) | GenericAce.AceFlagsFromInheritanceFlags(inheritanceFlags, propagationFlags), ObjectAceFlags.None, Guid.Empty, Guid.Empty);
47 }
48
50 {
52 }
53
54 public void AddAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType)
55 {
56 if (!base.IsDS)
57 {
59 }
60 CheckFlags(inheritanceFlags, propagationFlags);
61 AddQualifiedAce(sid, AceQualifier.SystemAudit, accessMask, GenericAce.AceFlagsFromAuditFlags(auditFlags) | GenericAce.AceFlagsFromInheritanceFlags(inheritanceFlags, propagationFlags), objectFlags, objectType, inheritedObjectType);
62 }
63
65 {
67 }
68
69 public void SetAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType)
70 {
71 if (!base.IsDS)
72 {
74 }
75 CheckFlags(inheritanceFlags, propagationFlags);
76 SetQualifiedAce(sid, AceQualifier.SystemAudit, accessMask, GenericAce.AceFlagsFromAuditFlags(auditFlags) | GenericAce.AceFlagsFromInheritanceFlags(inheritanceFlags, propagationFlags), objectFlags, objectType, inheritedObjectType);
77 }
78
80 {
82 }
83
84 public bool RemoveAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType)
85 {
86 if (!base.IsDS)
87 {
89 }
90 return RemoveQualifiedAces(sid, AceQualifier.SystemAudit, accessMask, GenericAce.AceFlagsFromAuditFlags(auditFlags) | GenericAce.AceFlagsFromInheritanceFlags(inheritanceFlags, propagationFlags), saclSemantics: true, objectFlags, objectType, inheritedObjectType);
91 }
92
97
98 public void RemoveAuditSpecific(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType)
99 {
100 if (!base.IsDS)
101 {
103 }
104 RemoveQualifiedAcesSpecific(sid, AceQualifier.SystemAudit, accessMask, GenericAce.AceFlagsFromAuditFlags(auditFlags) | GenericAce.AceFlagsFromInheritanceFlags(inheritanceFlags, propagationFlags), objectFlags, objectType, inheritedObjectType);
105 }
106}
static string InvalidOperation_OnlyValidForDS
Definition SR.cs:94
Definition SR.cs:7
bool RemoveQualifiedAces(SecurityIdentifier sid, AceQualifier qualifier, int accessMask, AceFlags flags, bool saclSemantics, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType)
Definition CommonAcl.cs:894
void RemoveQualifiedAcesSpecific(SecurityIdentifier sid, AceQualifier qualifier, int accessMask, AceFlags flags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType)
void CheckFlags(InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags)
Definition CommonAcl.cs:802
void AddQualifiedAce(SecurityIdentifier sid, AceQualifier qualifier, int accessMask, AceFlags flags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType)
Definition CommonAcl.cs:822
void SetQualifiedAce(SecurityIdentifier sid, AceQualifier qualifier, int accessMask, AceFlags flags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType)
Definition CommonAcl.cs:860
static AceFlags AceFlagsFromAuditFlags(AuditFlags auditFlags)
static AceFlags AceFlagsFromInheritanceFlags(InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags)
void AddAudit(SecurityIdentifier sid, ObjectAuditRule rule)
Definition SystemAcl.cs:49
void RemoveAuditSpecific(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType)
Definition SystemAcl.cs:98
void AddAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags)
Definition SystemAcl.cs:27
void SetAudit(SecurityIdentifier sid, ObjectAuditRule rule)
Definition SystemAcl.cs:64
void RemoveAuditSpecific(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags)
Definition SystemAcl.cs:44
bool RemoveAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags)
Definition SystemAcl.cs:39
void SetAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType)
Definition SystemAcl.cs:69
SystemAcl(bool isContainer, bool isDS, int capacity)
Definition SystemAcl.cs:7
void RemoveAuditSpecific(SecurityIdentifier sid, ObjectAuditRule rule)
Definition SystemAcl.cs:93
bool RemoveAudit(SecurityIdentifier sid, ObjectAuditRule rule)
Definition SystemAcl.cs:79
SystemAcl(bool isContainer, bool isDS, RawAcl rawAcl, bool trusted)
Definition SystemAcl.cs:22
SystemAcl(bool isContainer, bool isDS, RawAcl rawAcl)
Definition SystemAcl.cs:17
void AddAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType)
Definition SystemAcl.cs:54
void SetAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags)
Definition SystemAcl.cs:33
bool RemoveAudit(AuditFlags auditFlags, SecurityIdentifier sid, int accessMask, InheritanceFlags inheritanceFlags, PropagationFlags propagationFlags, ObjectAceFlags objectFlags, Guid objectType, Guid inheritedObjectType)
Definition SystemAcl.cs:84
SystemAcl(bool isContainer, bool isDS, byte revision, int capacity)
Definition SystemAcl.cs:12
static readonly Guid Empty
Definition Guid.cs:86