Index: Boo.Lang.Compiler/MediumTrust.cs =================================================================== --- Boo.Lang.Compiler/MediumTrust.cs (revision 0) +++ Boo.Lang.Compiler/MediumTrust.cs (revision 0) @@ -0,0 +1,39 @@ +using System; +using System.Collections.Generic; +using System.Security; +using System.Security.Permissions; +using System.Text; + +namespace Boo.Lang.Compiler +{ + public class MediumTrust + { + private static bool CheckPermission(IPermission permission) + { + bool hasPermission = false; + try + { + permission.Demand(); + hasPermission = true; + } + catch (SecurityException) + { + } + return hasPermission; + } + public static bool HasAppDomainPermission() + { + return CheckPermission(new SecurityPermission(SecurityPermissionFlag.ControlAppDomain)); + } + + public static bool HasEnvironmentPermission() + { + return CheckPermission(new EnvironmentPermission(PermissionState.Unrestricted)); + } + + public static bool HasDiscoveryPermission() + { + return CheckPermission(new FileIOPermission(PermissionState.Unrestricted)); + } + } +}