New test.
[mono.git] / mono / tests / cas / assembly / all.cs
1 using System;
2 using System.Reflection;
3 using System.Security;
4 using System.Security.Permissions;
5
6 [assembly: SecurityPermission (SecurityAction.RequestMinimum, Execution=true)]
7 //[assembly: PermissionSet (SecurityAction.RequestOptional, Unrestricted=true)]
8 [assembly: SecurityPermission (SecurityAction.RequestOptional, Flags=SecurityPermissionFlag.AllFlags)]
9 [assembly: SecurityPermission (SecurityAction.RequestRefuse, SkipVerification=true)]
10
11 public class Program {
12
13         static public int Main (string[] args)
14         {
15                 object[] attrs = Assembly.GetExecutingAssembly ().GetCustomAttributes (false);
16                 for (int i = 0; i < attrs.Length; i++) {
17                         if (attrs [i] is PermissionSetAttribute) {\r
18                                 PermissionSetAttribute psa = (attrs [i] as PermissionSetAttribute);\r
19                                 Console.WriteLine ("{0} - {1}", psa.Action, psa.CreatePermissionSet ());\r
20                         } else if (attrs [i] is SecurityAttribute) {\r
21                                 SecurityAttribute sa = (attrs [i] as SecurityAttribute);\r
22                                 IPermission p = sa.CreatePermission ();\r
23                                 PermissionSet ps = new PermissionSet (PermissionState.None);\r
24                                 ps.AddPermission (p);\r
25                                 Console.WriteLine ("{0} - {1}", sa.Action, ps);\r
26                         } else {
27                                 Console.WriteLine (attrs [i]);
28                         }
29                 }
30                 return 0;
31         }
32 }