merge 100015:100420
[mono.git] / mono / metadata / verify-internals.h
1 #ifndef __MONO_METADATA_VERIFY_INTERNAL_H__
2 #define __MONO_METADATA_VERIFY_INTERNAL_H__
3
4 #include <mono/metadata/metadata.h>
5
6 G_BEGIN_DECLS
7
8 typedef enum {
9         MONO_VERIFIER_MODE_OFF,
10         MONO_VERIFIER_MODE_VALID,
11         MONO_VERIFIER_MODE_VERIFIABLE,
12         MONO_VERIFIER_MODE_STRICT
13 } MiniVerifierMode;
14
15 void mono_verifier_set_mode (MiniVerifierMode mode) MONO_INTERNAL;
16 void mono_verifier_enable_verify_all (void) MONO_INTERNAL;
17
18 gboolean mono_verifier_is_enabled_for_method (MonoMethod *method) MONO_INTERNAL;
19 gboolean mono_verifier_is_enabled_for_class (MonoClass *klass) MONO_INTERNAL;
20
21 gboolean mono_verifier_is_method_full_trust (MonoMethod *method) MONO_INTERNAL;
22 gboolean mono_verifier_is_class_full_trust (MonoClass *klass) MONO_INTERNAL;
23
24 gboolean mono_verifier_verify_class (MonoClass *klass) MONO_INTERNAL;
25
26 GSList* mono_method_verify_with_current_settings (MonoMethod *method, gboolean skip_visibility) MONO_INTERNAL;
27 G_END_DECLS
28
29 #endif  /* __MONO_METADATA_VERIFY_INTERNAL_H__ */
30