First set of licensing changes
[mono.git] / mono / metadata / security-core-clr.c
index de9ec6a79c993c20b6f1f3f08893461f1226d722..4c6589176b8da7d36be39242e0997c12c5e40afa 100644 (file)
@@ -6,6 +6,7 @@
  *     Sebastien Pouliot  <sebastien@ximian.com>
  *
  * Copyright 2007-2010 Novell, Inc (http://www.novell.com)
+ * Licensed under the MIT license. See LICENSE file in the project root for full license information.
  */
 
 #include <mono/metadata/class-internals.h>
@@ -122,30 +123,21 @@ mono_security_core_clr_is_platform_image (MonoImage *image)
 
 #ifndef DISABLE_SECURITY
 
+/* Class lazy loading functions */
+static GENERATE_GET_CLASS_WITH_CACHE (security_critical, System.Security, SecurityCriticalAttribute)
+static GENERATE_GET_CLASS_WITH_CACHE (security_safe_critical, System.Security, SecuritySafeCriticalAttribute)
+
 static MonoClass*
 security_critical_attribute (void)
 {
-       static MonoClass *klass = NULL;
-
-       if (!klass) {
-               klass = mono_class_from_name (mono_defaults.corlib, "System.Security", 
-                       "SecurityCriticalAttribute");
-       }
-       g_assert (klass);
-       return klass;
+       return mono_class_get_security_critical_class ();
 }
 
 static MonoClass*
 security_safe_critical_attribute (void)
 {
-       static MonoClass *klass = NULL;
+       return mono_class_get_security_safe_critical_class ();
 
-       if (!klass) {
-               klass = mono_class_from_name (mono_defaults.corlib, "System.Security", 
-                       "SecuritySafeCriticalAttribute");
-       }
-       g_assert (klass);
-       return klass;
 }
 
 /* sometime we get a NULL (not found) caller (e.g. get_reflection_caller) */