2010-05-27 Jb Evain <jbevain@novell.com>
[mcs.git] / class / corlib / System.Security.AccessControl / DiscretionaryAcl.cs
blob3538fc415d9f038bcf8eb92243b02fed2531713a
1 //
2 // System.Security.AccessControl.DiscretionaryAcl implementation
3 //
4 // Authors:
5 // Dick Porter <dick@ximian.com>
6 // Atsushi Enomoto <atsushi@ximian.com>
7 //
8 // Copyright (C) 2006-2007 Novell, Inc (http://www.novell.com)
9 //
10 // Permission is hereby granted, free of charge, to any person obtaining
11 // a copy of this software and associated documentation files (the
12 // "Software"), to deal in the Software without restriction, including
13 // without limitation the rights to use, copy, modify, merge, publish,
14 // distribute, sublicense, and/or sell copies of the Software, and to
15 // permit persons to whom the Software is furnished to do so, subject to
16 // the following conditions:
17 //
18 // The above copyright notice and this permission notice shall be
19 // included in all copies or substantial portions of the Software.
20 //
21 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
22 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
23 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
24 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
25 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
26 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
27 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
30 using System.Security.Principal;
32 namespace System.Security.AccessControl {
33 public sealed class DiscretionaryAcl : CommonAcl
35 // RawAcl raw_acl;
37 public DiscretionaryAcl (bool isContainer, bool isDS,
38 int capacity)
39 : this (isContainer, isDS, 0, capacity)
41 throw new NotImplementedException ();
44 public DiscretionaryAcl (bool isContainer, bool isDS,
45 RawAcl rawAcl)
46 : base (isContainer, isDS, 0)
48 // this.raw_acl = rawAcl;
51 public DiscretionaryAcl (bool isContainer, bool isDS,
52 byte revision, int capacity)
53 : base (isContainer, isDS, revision, capacity)
57 public void AddAccess (AccessControlType accessType,
58 SecurityIdentifier sid, int accessMask,
59 InheritanceFlags inheritanceFlags,
60 PropagationFlags propagationFlags)
62 throw new NotImplementedException ();
63 // CommonAce?
66 public void AddAccess (AccessControlType accessType,
67 SecurityIdentifier sid, int accessMask,
68 InheritanceFlags inheritanceFlags,
69 PropagationFlags propagationFlags,
70 ObjectAceFlags objectFlags,
71 Guid objectType,
72 Guid inheritedObjectType)
74 // ObjectAce?
75 throw new NotImplementedException ();
78 public bool RemoveAccess (AccessControlType accessType,
79 SecurityIdentifier sid,
80 int accessMask,
81 InheritanceFlags inheritanceFlags,
82 PropagationFlags propagationFlags)
84 throw new NotImplementedException ();
87 public bool RemoveAccess (AccessControlType accessType,
88 SecurityIdentifier sid,
89 int accessMask,
90 InheritanceFlags inheritanceFlags,
91 PropagationFlags propagationFlags,
92 ObjectAceFlags objectFlags,
93 Guid objectType,
94 Guid inheritedObjectType)
96 throw new NotImplementedException ();
99 public void RemoveAccessSpecific (AccessControlType accessType,
100 SecurityIdentifier sid,
101 int accessMask,
102 InheritanceFlags inheritanceFlags,
103 PropagationFlags propagationFlags)
105 throw new NotImplementedException ();
108 public void RemoveAccessSpecific (AccessControlType accessType,
109 SecurityIdentifier sid,
110 int accessMask,
111 InheritanceFlags inheritanceFlags,
112 PropagationFlags propagationFlags,
113 ObjectAceFlags objectFlags,
114 Guid objectType,
115 Guid inheritedObjectType)
117 throw new NotImplementedException ();
120 public void SetAccess (AccessControlType accessType,
121 SecurityIdentifier sid,
122 int accessMask,
123 InheritanceFlags inheritanceFlags,
124 PropagationFlags propagationFlags)
126 throw new NotImplementedException ();
129 public void SetAccess (AccessControlType accessType,
130 SecurityIdentifier sid,
131 int accessMask,
132 InheritanceFlags inheritanceFlags,
133 PropagationFlags propagationFlags,
134 ObjectAceFlags objectFlags,
135 Guid objectType,
136 Guid inheritedObjectType)
138 throw new NotImplementedException ();