Age | Commit message (Collapse) | Author |
|
svn path=/trunk/mcs/; revision=145609
|
|
svn path=/trunk/mcs/; revision=111713
|
|
* CodeAccessPermission.cs,
* PermissionSet.cs,
* SecurityManager.cs: Provide better MonoTODO messages for the
next version of MoMA.
svn path=/trunk/mcs/; revision=104578
|
|
* PermissionSet.cs: Fix InvalidCastException on non-CAS permissions.
Fix bug #80936.
svn path=/trunk/mcs/; revision=73365
|
|
* PermissionSet.cs: Forgot to remove virtual from 2.0 IsSubsetOf.
svn path=/trunk/mcs/; revision=52392
|
|
* PermissionSet.cs: Another update to corcompare shows that even more
methods are not virtual in 2.0 final.
svn path=/trunk/mcs/; revision=52379
|
|
* PermissionSet.cs: Some methods are no more virtual in 2.0 final.
svn path=/trunk/mcs/; revision=52351
|
|
* PermissionSet.cs: If the current permission set is unrestricted then
we must allow "permit only" for unrestricted (all other case are known
to be too restrictive).
svn path=/trunk/mcs/; revision=51807
|
|
* CodeAccessPermission.cs: Fix Unrestricted PermitOnly (which is like
a no-op). Speed up Assert if Unrestricted.
* HostSecurityManager.cs: Updated FIXME description.
* PermissionSet.cs: Remove Copy() of the permission set when non-CAS
permissions are used (replaced by an array of bools). Completed Assert
support by re-using the array of bools. Updated TODO descriptions.
* SecurityException.cs: Added evidence (if available) in the ToString
description of the exception.
* SecurityManager.cs: Reworked CheckExecutionRights to get the correct
behavior.
svn path=/trunk/mcs/; revision=46378
|
|
* CodeAccessPermission.cs: Removed redundant and unrequired TODO.
* PermissionSet.cs: Some 2.0 optimizations (because sets are simpler
without the special case for identity permissions).
* SecurityManager.cs: Shortcut for ResolveIdentityPermissions (in 2.0)
and some more declarative security syntax updates.
svn path=/trunk/mcs/; revision=46249
|
|
IsSubsetOf method.
* SecurityManager.cs: Simplified IsGranted and added support for 2.0
(where all permissions support unrestricted). Changed desclarative
security syntax not to use flags (like the rest of the source code).
2005-06-16 Sebastien Pouliot <sebastien@ximian.com>
svn path=/trunk/mcs/; revision=46102
|
|
* SecurityManager.cs: Added ResolvingPolicyLevel property to enable
support for FullTrustAssemblies during policy resolution. Reworked
(simplified) locking. Moved check for CheckExecutionRights to the
"right" place.
* PermissionSet.cs: Added shortcut in GetPermission(Type).
svn path=/trunk/mcs/; revision=45967
|
|
* CodeAccessPermission.cs: Allow unrestricted identity permissions in
2.0.
* PermissionBuilder.cs: New. Internal class to help create permission
instances from XML or with a fully qualified name. This class also
deals with unification.
* PermissionSet.cs: Use PermissionBuilder to create permissions in
FromXml method. Many 2.0 fixes (mostly to support unrestricted
identity permissions)
svn path=/trunk/mcs/; revision=45117
|
|
* CodeAccessPermission.cs: Fix typo for PermitOnly. Added ComVisible
attribute for NET_2_0 profile.
* PermissionSet.cs: Changed static string to const. Added ComVisible
attribute for NET_2_0 profile.
* SecurityContext.cs: Capture the identity token but don't create a
WindowsIdentity instance unless required (e.g. Run). This requires
less privileges (so it runs better that way under CAS).
svn path=/trunk/mcs/; revision=45039
|
|
* PermissionSet.cs: Add support for "hidden" read-only mode (as used
by PolicyStatement).
* SecurityFrame.cs: Add some debugging code in the ToString method.
* SecurityManager.cs: Changed internal API so we can display the
permission that failed in a PermissionSet (e.g. assembly or appdomain).
svn path=/trunk/mcs/; revision=44585
|
|
* CodeAccessPermission.cs: Reworked frames check to check only for
the stack modifiers. Throwing a SecurityException now calls Assembly.
UnprotectedGetName () to avoid throwing (recursively) other
SecurityExceptions.
* PermissionSet.cs: Reworked frames check to include Assembly (moved)
and AppDomain (new) transitions.
* SecurityFrame.cs: Added Domain member to match the runtime structure
definition. Removed debugging code (will be moved into the runtime
later) as it can cause SecurityException is some cases.
* SecurityManager.cs: Added a method to check if a PermissionSet is
granted by an AppDomain.
svn path=/trunk/mcs/; revision=44124
|
|
* CodeAccessPermission.cs: Fixed PermitOnly when used in a set. Added
an InheritanceDemand for ControlEvidence and ControlPolicy on the
class.
* PermissionSet.cs: Added an InheritanceDemand for MS public key on
class.
* SecurityException.cs: Moved PermissionType up in ToString as this
property isn't restricted (i.e. will be part of the output even if
the other properties can't make it).
svn path=/trunk/mcs/; revision=42219
|
|
* CodeAccessPermission.cs: Fixed depth for starting the stack walk
(imperative) and fixed assert condition.
* PermissionSet.cs: Fixed depth for starting the stack walk.
* SecurityFrame.cs: Reversed stack. Added optional debugging code.
svn path=/trunk/mcs/; revision=41834
|
|
* CodeAccessPermission.cs,
* PermissionSet.cs: Don't throw NotSupportedException if the security
manager (SecurityManager.SecurityEnabled) is off.
svn path=/trunk/mcs/; revision=41358
|
|
* CodeAccessPermission.cs: Implement Equals for NET_2_0 profile.
* PermissionSet.cs: Added code to decode the metadata format used for
declarative security in 2.0 (except enums and arrays now).
* PermissionSetCollection.cs: Added code to decode from the new metadata
format used for declarative security in 2.0.
* SecurityManager.cs: Added support for LinkDemandChoice, Inheritance
DemandChoice and DemandChoice (2.0). Added support for reflected
LinkDemand (promotes the demand to a full Demand).
svn path=/trunk/mcs/; revision=41204
|
|
* SecurityException.cs: Show more information when a SecurityException
occurs to help debugging.
* SecurityManager.cs: Reworked LinkDemand implementation. Supply more
informations when throwing a SecurityException for LinkDemand.
* PermissionSet.cs: Remove (now) unused code for LinkDemand.
svn path=/trunk/mcs/; revision=40392
|
|
* CodeAccessPermission.cs: Made ThrowSecurityException static so it
can be reused from PermissionSet.
* SecurityManager.cs: Use the new icalls for SecurityEnabled and
CheckExecutionRights properties. Fix IsGranted for unrestricted
permissions. Set type correctly when loading policy files.
* PermissionSet.cs: Now supports unrestricted permission set when
evaluating demands.
svn path=/trunk/mcs/; revision=39458
|
|
* PermissionSet.cs: Simplified GetHashCode as two exact copies may
have different hash codes (documented as such). This fix some unit
tests for 2.0.
svn path=/trunk/mcs/; revision=38725
|
|
* CodeAccessPermission.cs: CheckAssert, CheckDemand, CheckDeny and
CheckPermitOnly are no more publicly avaiable in Fx 2.0 and have been
changed to internal for all profiles. Updated comments to reflect the
(better) documentation available with 2.0.
* HostSecurityManager.cs: Updated to Dec CTP specs. There is missing
documentation (and/or classes) to implement completly the
DetermineApplicationTrust method at this point.
* PermissionSetCollection.cs: Completed implementation.
* PermissionSet.cs: Fix the case where Assert, Deny and PermitOnly
must be ignored for non-CAS permissions.
* SecurityManager.cs: Refactored resolve methods to implements
ResolveSystemPolicy (a resolve without the AppDomain policy level).
Added a default implementation for GetZoneAndOrigin (empty ArrayList)
which seems to be right (at least) for FullTrust.
svn path=/trunk/mcs/; revision=38571
|
|
* CodeAccessPermission.cs: Refactored to play more nicely with
PermissionSet and the new functionalities in the runtime.
* PermissionSet.cs: Modified to use the new functionalities in the
runtime. This allows the declarative stack modifiers to work in a
stack walk.
* SecurityFrame.cs: New. This is the managed representation of the
security informations associated with a stack frame. This current
version only support declarative stack modifiers.
* SecurityManager.cs: Modified to use the new functionalities in the
runtime.
svn path=/trunk/mcs/; revision=37973
|
|
* CodeAccessPermission.cs:
* NamedPermissionSet.cs:
* PermissionSet.cs:
* SecurityElement.cs:
* SecurityException.cs:
Added ComVisible attributes to match 2.0 October Preview.
* SecureString.cs: Added an internal method to get the unencrypted
string (required to use the string inside mscorlib).
svn path=/trunk/mcs/; revision=36870
|
|
* CodeAccessPermission.cs: Implemented stubs (soon to be icalls) to
get/set/clear the current security frame on the stack. Implemented
Assert, Deny and PermitOnly with the new methods. Changed Demand to
use the CheckAssert, CheckDeny, CheckPermitOnly and CheckDemand
introduced in 2.0.
* PermissionSet.cs: Fixed IsEmpty using documentation from 2.0 beta 1.
Implemented immediate (i.e. no stack walk) caller demand (CAS and
non-CAS) required for LinkDemand and InheritanceDemand. Implemented
Assert, Deny and PermitOnly using CodeAccessPermission new methods.
Re-implement Demand to separate CAS and non-CAS permissions.
* SecurityManager.cs: Added new private static methods that will
either be called by the JIT (linkdemand), runtime (inheritancedemand)
or by code emitted by the JIT (demand, assert, deny and permitonly).
svn path=/trunk/mcs/; revision=35042
|
|
* PermissionSet.cs: Updated to match latest unit tests, i.e. match
Fx 1.1 on NET_1_1 and Fx 2.0 (beta 1) in NET_2_0.
* SecurityElement.cs: FromString is now internal before NET_2_0.
svn path=/trunk/mcs/; revision=33204
|
|
* NamedPermissionSet.cs: FromXml now calls base class instead of an
internal method of PermissionSet. This should allow class to inherit
from NamedPermissionSet properly.
* PermissionSet.cs: Added an internal PolicyLevel property to allow
policy file class name resolution. Fixed IsEmpty to return true if
the list contains "empty" permissions. Fixed Copy to copy permissions
even for unrestricted sets (again because of IUnrestrictedPermission).
* SecurityManager.cs: Fixed Resolve(Evidence) because permission
classes Intersect methods can either return null or an empty
PermissionSet. Fixed ResolvePolicy(Evidence[]) for null (NET_2_0).
svn path=/trunk/mcs/; revision=33151
|
|
* PermissionSet.cs: Fixed RemovePermission and Intersect (due to typos
in unit tests). Fixed SetPermission (null).
svn path=/trunk/mcs/; revision=33086
|
|
* NamedPermissionSet.cs: Fixed Description in copies, GetHashCode and
Equals (for NET_2_0). Fixed handling of null Name when deserialized
from XML.
* PermissionSet.cs: AddPermission now unions permissions of the same
type. CopyTo throw (most) exceptions only if there are items in the
set. Implemented Demand (but without support for Assert, Deny and
PermitOnly). Fixed deserialized from XML when no class is specified.
Started implementation of ConvertPermissionSet (error cases). Fixed
Intersect to be compatible (including bugs like FDBK14612) with MS.
RemovePermission now compatible with MS (bug? FDBK14622). Fixed Union
to work with permissions that do not implement IUnrestrictedPermission.
svn path=/trunk/mcs/; revision=33061
|
|
* CodeAccessPermission.cs: Basic implementation for Demand (without
full stack trace, i.e. Assert, Deny and PermitOnly aren't considered).
Added TODO to unimplemented NET_2_0 methods.
* HostSecurityManager.cs: Added comments (as it looked not implemented
even to myself).
* PermissionSet.cs: Fixed Unrestricted when copied. Changed exception
ordering in Copy (ArgumentNullException couldn't work). Made IsEmpty
more robust.
* SecurityManager.cs: Implemented IsGranted using Assembly.Demand.
Basic implementation for policy resolution.
svn path=/trunk/mcs/; revision=32223
|
|
* CodeAccessPermission.cs: Added CheckAssert, CheckDemand, CheckDeny,
CheckPermitOnly, Equals and GetHashCode to NET_2_0 profile. Actualized
TODOs. Removed duplicate license.
* NamedPermissionSet.cs: Added Equals/GetHashCode to NET_2_0 profile.
Removed duplicate license.
* PermissionSet.cs: Added Equals/GetHashCode to NET_2_0 profile.
Removed duplicate license.
* SecurityElement.cs: Added Copy and FromString methods to NET_2_0
profile. Removed duplicate license.
* SecurityException.cs: Added new constructors and properties to
NET_2_0 profile. Removed duplicate license.
* SecurityManager.cs: Added GetZoneAndOrigin and ResolvePolicy to
NET_2_0 profile. Removed duplicate license.
* VerificationException.cs: Implements _Exception for NET_2_0 profile.
Removed duplicate license.
* XmlSyntaxException.cs: Implements _Exception for NET_2_0 profile.
Removed duplicate license.
svn path=/trunk/mcs/; revision=31128
|
|
svn path=/trunk/mcs/; revision=29249
|
|
* NamedPermissionSet.cs: Changed internal constructor
NamedPermissionSet (SecurityElement e) to NamedPermissionSet ().
* PermissionSet.cs: Changed internal constructor
PermissionSet (SecurityElement e) to PermissionSet ().
svn path=/trunk/mcs/; revision=22521
|
|
* CodeAccessPermission.cs: Fixed Union to match 1.1/1.2 documentation.
Simplified ToString to match MS implementation. Added LAMESPEC to
Assert, Demand, Deny and PermitOnly as they aren't virtual.
* NamedPermissionSet.cs: Added internal constructor for PolicyLevel.
* PermissionSet.cs: Added internal constructor for PolicyLevel.
* SecurityManager.cs: Moved some stuff to PolicyLevel class (e.g. Load).
svn path=/trunk/mcs/; revision=21732
|
|
* AllowPartiallyTrustedCallersAttribute.cs: Fixed AttributeUsage using
1.2 documentation (AllowMultiple=false, Inherited=false)
* NamedPermissionSet.cs: Changes to match unit tests.
* PermissionSet.cs: Implemented Copy, Intersect, IsSubsetOf and Union
methods. Corrected FromXml.
* PolicyLevelType.cs: Added missing [Serializable].
* SecurityElement.cs: Fixed constructor to match unit tests.
* SecurityException.cs: Added support for GrantedSet and RefusedSet
properties (since 1.1). Set HResult to 0x8013150A.
* SecurityZone.cs: Added missing [Serializable].
* SuppressUnmanagedCodeSecurityAttribute.cs: Fixed AttributeUsage using
1.2 documentation (AllowMultiple=true, Inherited=false)
* UnverifiableCodeAttribute.cs: Fixed AttributeUsage using 1.2
documentation (AllowMultiple=true, Inherited=false)
svn path=/trunk/mcs/; revision=21610
|
|
* PermissionSet.cs: Added missing "virtual" to Count, IsSynchronized
and SyncRoot.
svn path=/trunk/mcs/; revision=15734
|
|
* CodeAccessPermission.cs: Added missing methods. Removed old XML
documentation (present in monodoc). Added missing MonoTODO attrs.
* NamedPermissionSet.cs : Changed some code from result of unit
tests. Updated MonoTODO attributes.
* PermissionSet.cs: Added missing methods. Removed old XML
documentation (present in monodoc). Added missing MonoTODO attrs.
Added code to some methods.
* SecurityManager.cs: Added missing MonoTODO attributes.
svn path=/trunk/mcs/; revision=15710
|
|
svn path=/trunk/mcs/; revision=3540
|
|
* PermissionSet.cs SecurityManager.cs: New Files
* CodeAccessPermission.cs: Add Skeleton code
* IPermission.cs: Make public and inherit from ISecurityEncodable
* ISecurityEncodable.cs: Make interface public
* ISecurityPolicyEncodable.cs: Ditto
* IStackWalk.cs: Ditto
svn path=/trunk/mcs/; revision=1754
|