Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
PipeAccessRule.cs
Go to the documentation of this file.
3
4namespace System.IO.Pipes;
5
6public sealed class PipeAccessRule : AccessRule
7{
9
10 public PipeAccessRule(string identity, PipeAccessRights rights, AccessControlType type)
11 : this(new NTAccount(identity), AccessMaskFromRights(rights, type), isInherited: false, type)
12 {
13 }
14
16 : this(identity, AccessMaskFromRights(rights, type), isInherited: false, type)
17 {
18 }
19
20 internal PipeAccessRule(IdentityReference identity, int accessMask, bool isInherited, AccessControlType type)
21 : base(identity, accessMask, isInherited, InheritanceFlags.None, PropagationFlags.None, type)
22 {
23 }
24
25 internal static int AccessMaskFromRights(PipeAccessRights rights, AccessControlType controlType)
26 {
27 if (rights < (PipeAccessRights)0 || rights > (PipeAccessRights.FullControl | PipeAccessRights.AccessSystemSecurity))
28 {
30 }
31 switch (controlType)
32 {
33 case AccessControlType.Allow:
34 rights |= PipeAccessRights.Synchronize;
35 break;
36 case AccessControlType.Deny:
37 if (rights != PipeAccessRights.FullControl)
38 {
39 rights &= ~PipeAccessRights.Synchronize;
40 }
41 break;
42 }
43 return (int)rights;
44 }
45
46 internal static PipeAccessRights RightsFromAccessMask(int accessMask)
47 {
48 return (PipeAccessRights)accessMask;
49 }
50}
PipeAccessRule(IdentityReference identity, PipeAccessRights rights, AccessControlType type)
PipeAccessRule(IdentityReference identity, int accessMask, bool isInherited, AccessControlType type)
PipeAccessRule(string identity, PipeAccessRights rights, AccessControlType type)
static PipeAccessRights RightsFromAccessMask(int accessMask)
static int AccessMaskFromRights(PipeAccessRights rights, AccessControlType controlType)
static string ArgumentOutOfRange_NeedValidPipeAccessRights
Definition SR.cs:16
Definition SR.cs:7