diff -u mono-2.6.7/debian/changelog mono-2.6.7/debian/changelog --- mono-2.6.7/debian/changelog +++ mono-2.6.7/debian/changelog @@ -1,19 +1,59 @@ -mono (2.6.7-3ubuntu1~dhx1) lucid; urgency=low +mono (2.6.7-5ubuntu1~dhx1) lucid; urgency=low * Upload to badgerports/lucid. - -- Jo Shields Mon, 20 Sep 2010 13:27:58 +0100 + -- Jo Shields Wed, 16 Mar 2011 20:32:11 +0000 -mono (2.6.7-3ubuntu1) maverick; urgency=low +mono (2.6.7-5ubuntu1) natty; urgency=low - * Merge from Debian Unstable, remaining Ubuntu changes: - + debian/control: - - Lower mono-debugger Recommends on mono-dbg package to Suggests, - as mono-debugger is in Universe - - Lower libmono-firebirdsql1.7-cil Recommends on libmono-cil-dev - package to Suggests, as libfbclient2 is in Universe + * Build packages for ppc64. + * Work around GCC PR tree-optimization/46723. - -- Stefan Ebner Tue, 14 Sep 2010 19:58:16 +0200 + -- Matthias Klose Sat, 19 Feb 2011 16:59:03 +0100 + +mono (2.6.7-5) unstable; urgency=low + + [ Zoltan Varga ] + * [7453b31] Fix a merge problem which broke tailcalls and F# support. + (closes: #607465) + + [ Rodrigo Kumpera ] + * [e32c3aa] Check generic instantions for constraint violations. + (CVE-2010-4254, closes: #608288) + * [7905343] Fix corlib testsuite crash. + * [6eb9cab] Handle invalid instantiation of generic methods. + * [fbba0ca] Disable generic instance verification is security is off. + + [ Mirco Bauer ] + * [ec09641] Disable the use of shared memory to make Mono reliable + even when /dev/shm gets exhausted. (closes: #587948) + + -- Mirco Bauer Sun, 09 Jan 2011 19:38:15 +0100 + +mono (2.6.7-4) unstable; urgency=high + + [ Mirco Bauer ] + * [63821a1] Added libmono-nunit2.2-cil to conflicts and replaces of + libmono-cil-dev for smooth upgrade from lenny (closes: #602024) + * [0089f11] Moved the System.Data.Linq library into libmono-system- + data-linq2.0-cil to avoid an unneeded dependency chain for most + applications. + * [393dc41] Demote libmono-firebirdsql1.7-cil and mono-debugger from + recommends to suggests if built on Ubuntu. + + [ Paolo Molaro ] + * [52727f0] Search for dllimported shared libs in the base directory, + not cwd. * loader.c: we don't search the current directory anymore + for shared libraries referenced in DllImport attributes, as it has a + slight security risk. We search in the same directory where the + referencing image was loaded from, instead. + (CVE-2010-4159, closes: #605097) + + [ Zoltan Varga ] + * [f17ab04] Fix stack alignment when resuming from a signal handler in + the soft debugger. + + -- Mirco Bauer Mon, 06 Dec 2010 23:34:16 +0100 mono (2.6.7-3) unstable; urgency=low @@ -30,17 +70,6 @@ -- Mirco Bauer Thu, 09 Sep 2010 01:09:45 +0200 -mono (2.6.7-2ubuntu1) maverick; urgency=low - - * Merge from Debian Experimental, remaining Ubuntu changes: - + debian/control: - - Lower mono-debugger Recommends on mono-dbg package to Suggests, - as mono-debugger is in Universe - - Lower libmono-firebirdsql1.7-cil Recommends on libmono-cil-dev - package to Suggests, as libfbclient2 is in Universe - - -- Jo Shields Tue, 24 Aug 2010 19:17:07 +0100 - mono (2.6.7-2) experimental; urgency=low [ Mirco Bauer ] diff -u mono-2.6.7/debian/libmono-system-data2.0-cil.install mono-2.6.7/debian/libmono-system-data2.0-cil.install --- mono-2.6.7/debian/libmono-system-data2.0-cil.install +++ mono-2.6.7/debian/libmono-system-data2.0-cil.install @@ -3,4 +3,2 @@ -debian/tmp/usr/lib/mono/gac/System.Data.Linq/3.5.0.0__*/ debian/tmp/usr/lib/mono/2.0/System.Data.dll debian/tmp/usr/lib/mono/2.0/System.Data.DataSetExtensions.dll -debian/tmp/usr/lib/mono/2.0/System.Data.Linq.dll diff -u mono-2.6.7/debian/gbp.conf mono-2.6.7/debian/gbp.conf --- mono-2.6.7/debian/gbp.conf +++ mono-2.6.7/debian/gbp.conf @@ -4,6 +4,7 @@ +full = True [git-import-orig] postimport = git-dch -N%(version)s -S -a --debian-branch=$GBP_BRANCH no-merge = True [DEFAULT] -debian-branch = master-experimental -upstream-branch = upstream-experimental +debian-branch = master +upstream-branch = upstream diff -u mono-2.6.7/debian/rules mono-2.6.7/debian/rules --- mono-2.6.7/debian/rules +++ mono-2.6.7/debian/rules @@ -3,6 +3,9 @@ #export DH_VERBOSE=1 export MONO_SHARED_DIR=$(CURDIR) +# work around GCC PR tree-optimization/46723 +export DEB_GCC_NO_O3=1 + # Assume Debian behaviour by default. DISTRO = $(shell lsb_release -si) @@ -57,6 +60,24 @@ MONO_TEST = cd mono/tests && make test endif +FIREBIRDSQL_REL = "libmono-firebirdsql1.7-cil (= $(VERSION))" +ifeq ($(DISTRO), Ubuntu) + FIREBIRDSQL_VARS = -Vfirebirdsql:Suggests=$(FIREBIRDSQL_REL) + FIREBIRDSQL_VARS += -Vfirebirdsql:Recommends= +else + FIREBIRDSQL_VARS = -Vfirebirdsql:Suggests= + FIREBIRDSQL_VARS += -Vfirebirdsql:Recommends=$(FIREBIRDSQL_REL) +endif + +MDB_REL = mono-debugger +ifeq ($(DISTRO), Ubuntu) + MDB_VARS = -Vmdb:Suggests=$(MDB_REL) + MDB_VARS += -Vmdb:Recommends= +else + MDB_VARS = -Vmdb:Suggests= + MDB_VARS += -Vmdb:Recommends=$(MDB_REL) +endif + CONFIGURE = CFLAGS="$(CFLAGS)" \ ./configure $(CONF_FLAGS) --prefix=/usr \ --mandir=\$${prefix}/share/man \ @@ -65,7 +86,8 @@ --with-libgdiplus=installed --with-x=yes \ --with-profile4=no \ --with-moonlight=no \ - --enable-quiet-build=no + --enable-quiet-build=no \ + --disable-shared-handles # Mono's build system doesn't like -j > 1 MAKE_FLAGS += -j1 @@ -344,7 +366,8 @@ # mono-1.0/2.0-gac needs special runtime dep, to prevent circular dep (mono-runtime <-> mono-1.0/2.0-gac) debian/dh_clideps -p mono-1.0-gac -r $(DH_INTERNAL_MONO_PARAM) debian/dh_clideps -p mono-2.0-gac -r $(DH_INTERNAL_MONO_PARAM) - dh_gencontrol -i -- -Vmono:upversion=$(UPVERSION) -Vmono:next-upversion=$(NEXT_UPVERSION) + dh_gencontrol -i -- -Vmono:upversion=$(UPVERSION) -Vmono:next-upversion=$(NEXT_UPVERSION) \ + $(FIREBIRDSQL_VARS) $(MDB_VARS) dh_md5sums -i dh_builddeb -i diff -u mono-2.6.7/debian/control mono-2.6.7/debian/control --- mono-2.6.7/debian/control +++ mono-2.6.7/debian/control @@ -1,8 +1,7 @@ Source: mono Section: cli-mono Priority: optional -Maintainer: Ubuntu Developers -XSBC-Original-Maintainer: Debian Mono Group +Maintainer: Debian Mono Group Uploaders: Mirco Bauer , Sebastian Dröge , Jo Shields Build-Depends: debhelper (>= 7), dpkg-dev (>= 1.13.19), @@ -25,7 +24,7 @@ Package: mono-runtime Provides: cli-runtime, cli-virtual-machine -Architecture: i386 lpia kfreebsd-i386 powerpc amd64 kfreebsd-amd64 ia64 arm armeb armel sparc s390 +Architecture: i386 lpia kfreebsd-i386 powerpc ppc64 amd64 kfreebsd-amd64 ia64 arm armeb armel sparc s390 Replaces: mono-common (<< 2.4), mono-jit (<< 2.4), libmono0 (<< 2.4) Conflicts: mono-common (<< 2.4), mono-jit (<< 2.4), @@ -52,7 +51,7 @@ Package: mono-runtime-dbg Priority: extra Section: debug -Architecture: i386 lpia kfreebsd-i386 powerpc amd64 kfreebsd-amd64 ia64 arm armeb armel sparc s390 +Architecture: i386 lpia kfreebsd-i386 powerpc ppc64 amd64 kfreebsd-amd64 ia64 arm armeb armel sparc s390 Replaces: mono-jit-dbg (<< 2.4) Conflicts: mono-jit-dbg (<< 2.4) Depends: ${misc:Depends}, mono-runtime (= ${binary:Version}) @@ -68,7 +67,7 @@ Package: mono-utils Provides: cil-disassembler -Architecture: i386 lpia kfreebsd-i386 powerpc amd64 kfreebsd-amd64 ia64 arm armeb armel sparc s390 +Architecture: i386 lpia kfreebsd-i386 powerpc ppc64 amd64 kfreebsd-amd64 ia64 arm armeb armel sparc s390 Replaces: mono-mcs (<= 1.1.6-4) Depends: ${shlibs:Depends}, ${misc:Depends}, libmono0 (= ${binary:Version}), libmono-corlib2.0-cil (= ${source:Version}) | libmono-corlib1.0-cil (= ${source:Version}) Description: Mono utilities @@ -82,7 +81,7 @@ pedump, monodis and monograph. Package: mono-complete -Architecture: i386 lpia kfreebsd-i386 powerpc amd64 kfreebsd-amd64 ia64 arm armeb armel sparc s390 +Architecture: i386 lpia kfreebsd-i386 powerpc ppc64 amd64 kfreebsd-amd64 ia64 arm armeb armel sparc s390 Depends: ${misc:Depends}, mono-runtime (= ${binary:Version}), libmono0 (= ${binary:Version}), @@ -120,7 +119,7 @@ You should build-depend on cli-common-dev and the needed libraries instead. Package: libmono0 -Architecture: i386 lpia kfreebsd-i386 powerpc amd64 kfreebsd-amd64 ia64 arm armeb armel sparc s390 +Architecture: i386 lpia kfreebsd-i386 powerpc ppc64 amd64 kfreebsd-amd64 ia64 arm armeb armel sparc s390 Replaces: libmono-dev (<= 1.1.6-4) Conflicts: mono-utils (<< 1.2.3.1-4) Depends: ${shlibs:Depends}, ${misc:Depends} @@ -136,7 +135,7 @@ Package: libmono0-dbg Priority: extra Section: debug -Architecture: i386 lpia kfreebsd-i386 powerpc amd64 kfreebsd-amd64 ia64 arm armeb armel sparc s390 +Architecture: i386 lpia kfreebsd-i386 powerpc ppc64 amd64 kfreebsd-amd64 ia64 arm armeb armel sparc s390 Depends: ${misc:Depends}, libmono0 (= ${binary:Version}) Recommends: gdb Description: Mono JIT library, debugging symbols @@ -149,7 +148,7 @@ bytecode (aka assemblies), and a class library. Package: libmono-dev -Architecture: i386 lpia kfreebsd-i386 powerpc amd64 kfreebsd-amd64 ia64 arm armeb armel sparc s390 +Architecture: i386 lpia kfreebsd-i386 powerpc ppc64 amd64 kfreebsd-amd64 ia64 arm armeb armel sparc s390 Depends: ${misc:Depends}, libmono0 (= ${binary:Version}), libglib2.0-dev Description: Mono JIT library - Development files Header files and static libraries for libmono. @@ -161,7 +160,7 @@ bytecode (aka assemblies), and a class library. Package: libmono-profiler -Architecture: i386 lpia kfreebsd-i386 powerpc amd64 kfreebsd-amd64 ia64 arm armeb armel sparc s390 +Architecture: i386 lpia kfreebsd-i386 powerpc ppc64 amd64 kfreebsd-amd64 ia64 arm armeb armel sparc s390 Replaces: mono-runtime (<< 2.4.2.3) Depends: ${shlibs:Depends}, ${misc:Depends} Description: Mono profiler libraries @@ -176,7 +175,8 @@ Package: libmono-cil-dev Architecture: all -Replaces: libmono-nunit2.4-cil (<< 2.4.3), +Replaces: libmono-nunit2.2-cil (<< 2.4.3), + libmono-nunit2.4-cil (<< 2.4.3), libmono-cairo2.0-cil (<< 2.4.3), libmono-cecil-private-cil (<< 2.4.3), libmono-system-web2.0-cil (<< 2.4.3), @@ -184,8 +184,10 @@ libmono2.0-cil (<< 2.4.3), mono-devel (<< 2.4.3), libmono-dev (<< 2.4.3) -Conflicts: libmono-nunit2.4-cil -Suggests: libmono-firebirdsql1.7-cil (= ${source:Version}) +Conflicts: libmono-nunit2.2-cil, + libmono-nunit2.4-cil +Suggests: ${firebirdsql:Suggests} +Recommends: ${firebirdsql:Recommends} Depends: ${misc:Depends}, libmono1.0-cil (= ${source:Version}), libmono2.0-cil (= ${source:Version}), @@ -219,6 +221,7 @@ libmono-data-tds2.0-cil (= ${source:Version}), libmono-system-data1.0-cil (= ${source:Version}), libmono-system-data2.0-cil (= ${source:Version}), + libmono-system-data-linq2.0-cil (= ${source:Version}), libmono-system-web1.0-cil (= ${source:Version}), libmono-system-web2.0-cil (= ${source:Version}), libmono-system-web-mvc1.0-cil (= ${source:Version}), @@ -771,6 +774,22 @@ . This package contains the Mono System.Data library for CLI 2.0. +Package: libmono-system-data-linq2.0-cil +Architecture: all +Replaces: libmono-system-data2.0-cil (<< 2.6.7-4) +Conflicts: libmono-system-data2.0-cil (<< 2.6.7-4) +Depends: ${misc:Depends}, ${cli:Depends} +Description: Mono System.Data.Linq Library + Mono is a platform for running and developing applications based on the + ECMA/ISO Standards. Mono is an open source effort led by Novell. + Mono provides a complete CLR (Common Language Runtime) including compiler and + runtime, which can produce and execute CIL (Common Intermediate Language) + bytecode (aka assemblies), and a class library. + . + This package contains the Mono System.Data.Linq library which implements + LINQ to SQL. LINQ to SQL allows one to query relational databases using the + language-integrated query (LINQ) extension of the C# programming language. + Package: libmono-system-web1.0-cil Architecture: all Replaces: mono-classlib-1.0 (<< 1.1.13.6), mono-classlib-1.0-dbg (<< 1.1.13.6) @@ -1352,7 +1371,8 @@ Priority: extra Section: debug Architecture: all -Suggests: mono-debugger +Suggests: ${mdb:Suggests} +Recommends: ${mdb:Recommends} Depends: ${misc:Depends} Replaces: libmono1.0-cil (<< 1.2.4-1), libmono2.0-cil (<< 1.2.4-1), @@ -1658,7 +1678,7 @@ libraries, for CLI 2.0 Package: mono-jay -Architecture: i386 lpia kfreebsd-i386 powerpc amd64 kfreebsd-amd64 ia64 arm armeb armel sparc s390 +Architecture: i386 lpia kfreebsd-i386 powerpc ppc64 amd64 kfreebsd-amd64 ia64 arm armeb armel sparc s390 Depends: ${shlibs:Depends}, ${misc:Depends} Description: LALR(1) parser generator oriented to Java/CLI Mono is a platform for running and developing applications based on the diff -u mono-2.6.7/mono/metadata/class.c mono-2.6.7/mono/metadata/class.c --- mono-2.6.7/mono/metadata/class.c +++ mono-2.6.7/mono/metadata/class.c @@ -4529,6 +4529,9 @@ setup_interface_offsets (class, 0); } + if (class->generic_class && !mono_verifier_class_is_valid_generic_instantiation (class)) + mono_class_set_failure (class, MONO_EXCEPTION_TYPE_LOAD, g_strdup ("Invalid generic instantiation")); + goto leave; leave: diff -u mono-2.6.7/mono/metadata/reflection.c mono-2.6.7/mono/metadata/reflection.c --- mono-2.6.7/mono/metadata/reflection.c +++ mono-2.6.7/mono/metadata/reflection.c @@ -10183,6 +10183,9 @@ mono_g_hash_table_insert (image->generic_def_objects, imethod, rmethod); mono_loader_unlock (); } + + if (!mono_verifier_is_method_valid_generic_instantiation (inflated)) + mono_raise_exception (mono_get_exception_argument ("typeArguments", "Invalid generic arguments")); return mono_method_get_object (mono_object_domain (rmethod), inflated, NULL); } diff -u mono-2.6.7/mono/mini/mini-amd64.h mono-2.6.7/mono/mini/mini-amd64.h --- mono-2.6.7/mono/mini/mini-amd64.h +++ mono-2.6.7/mono/mini/mini-amd64.h @@ -376,6 +376,7 @@ #define MONO_ARCH_DYN_CALL_PARAM_AREA 0 #define MONO_ARCH_HAVE_LLVM_IMT_TRAMPOLINE 1 +#define MONO_ARCH_HAVE_SETUP_RESUME_FROM_SIGNAL_HANDLER_CTX 1 #define MONO_ARCH_USE_OP_TAIL_CALL(caller_sig, callee_sig) mono_metadata_signature_equal ((caller_sig), (callee_sig)) only in patch2: unchanged: --- mono-2.6.7.orig/debian/libmono-system-data-linq2.0-cil.install +++ mono-2.6.7/debian/libmono-system-data-linq2.0-cil.install @@ -0,0 +1,2 @@ +debian/tmp/usr/lib/mono/gac/System.Data.Linq/3.5.0.0__*/ +debian/tmp/usr/lib/mono/2.0/System.Data.Linq.dll only in patch2: unchanged: --- mono-2.6.7.orig/mono/mini/mini.h +++ mono-2.6.7/mono/mini/mini.h @@ -1705,6 +1705,7 @@ void mono_arch_skip_breakpoint (MonoContext *ctx) MONO_INTERNAL; void mono_arch_skip_single_step (MonoContext *ctx) MONO_INTERNAL; gpointer mono_arch_get_seq_point_info (MonoDomain *domain, guint8 *code) MONO_INTERNAL; +void mono_arch_setup_resume_sighandler_ctx (MonoContext *ctx, gpointer func) MONO_INTERNAL; #endif MonoJitInfo *mono_arch_find_jit_info (MonoDomain *domain, only in patch2: unchanged: --- mono-2.6.7.orig/mono/mini/exceptions-amd64.c +++ mono-2.6.7/mono/mini/exceptions-amd64.c @@ -1456,3 +1456,19 @@ } #endif +/* + * mono_arch_setup_resume_sighandler_ctx: + * + * Setup CTX so execution continues at FUNC. + */ +void +mono_arch_setup_resume_sighandler_ctx (MonoContext *ctx, gpointer func) +{ + /* + * When resuming from a signal handler, the stack should be misaligned, just like right after + * a call. + */ + if ((((guint64)MONO_CONTEXT_GET_SP (ctx)) % 16) == 0) + MONO_CONTEXT_SET_SP (ctx, (guint64)MONO_CONTEXT_GET_SP (ctx) - 8); + MONO_CONTEXT_SET_IP (ctx, func); +} only in patch2: unchanged: --- mono-2.6.7.orig/mono/mini/debugger-agent.c +++ mono-2.6.7/mono/mini/debugger-agent.c @@ -3523,8 +3523,11 @@ mono_arch_sigctx_to_monoctx (sigctx, &ctx); memcpy (&tls->handler_ctx, &ctx, sizeof (MonoContext)); +#ifdef MONO_ARCH_HAVE_SETUP_RESUME_FROM_SIGNAL_HANDLER_CTX + mono_arch_setup_resume_sighandler_ctx (&ctx, func); +#else MONO_CONTEXT_SET_IP (&ctx, func); - +#endif mono_arch_monoctx_to_sigctx (&ctx, sigctx); } only in patch2: unchanged: --- mono-2.6.7.orig/mono/metadata/verify.c +++ mono-2.6.7/mono/metadata/verify.c @@ -6483,6 +6483,25 @@ return FALSE; return TRUE; } + +gboolean +mono_verifier_class_is_valid_generic_instantiation (MonoClass *class) +{ + if (!mono_verifier_is_enabled_for_class (class)) + return TRUE; + return mono_class_is_valid_generic_instantiation (NULL, class); +} + +gboolean +mono_verifier_is_method_valid_generic_instantiation (MonoMethod *method) +{ + if (!method->is_inflated) + return TRUE; + if (!mono_verifier_is_enabled_for_method (method)) + return TRUE; + return mono_method_is_valid_generic_instantiation (NULL, method); +} + #else gboolean @@ -6554,4 +6573,19 @@ /* The verifier was disabled at compile time */ return NULL; } + +gboolean +mono_verifier_class_is_valid_generic_instantiation (MonoClass *class) +{ + return TRUE; +} + +gboolean +mono_verifier_is_method_valid_generic_instantiation (MonoMethod *method) +{ + return TRUE; +} + + + #endif only in patch2: unchanged: --- mono-2.6.7.orig/mono/metadata/icall.c +++ mono-2.6.7/mono/metadata/icall.c @@ -67,6 +67,7 @@ #include #include #include +#include #include #include #include @@ -2432,6 +2433,7 @@ static MonoReflectionType* ves_icall_Type_MakeGenericType (MonoReflectionType *type, MonoArray *type_array) { + MonoClass *class; MonoType *geninst, **types; int i, count; @@ -2450,6 +2452,12 @@ if (!geninst) return NULL; + class = mono_class_from_mono_type (geninst); + + /*we might inflate to the GTD*/ + if (class->generic_class && !mono_verifier_class_is_valid_generic_instantiation (class)) + mono_raise_exception (mono_get_exception_argument ("method", "Invalid generic arguments")); + return mono_type_get_object (mono_object_domain (type), geninst); } only in patch2: unchanged: --- mono-2.6.7.orig/mono/metadata/loader.c +++ mono-2.6.7/mono/metadata/loader.c @@ -1316,32 +1316,34 @@ if (!module) { void *iter = NULL; - while ((full_name = mono_dl_build_path (NULL, file_name, &iter))) { + char *mdirname = g_path_get_dirname (image->name); + while ((full_name = mono_dl_build_path (mdirname, file_name, &iter))) { mono_trace (G_LOG_LEVEL_INFO, MONO_TRACE_DLLIMPORT, - "DllImport loading location: '%s'.", full_name); + "DllImport loading library: '%s'.", full_name); module = cached_module_load (full_name, MONO_DL_LAZY, &error_msg); if (!module) { mono_trace (G_LOG_LEVEL_INFO, MONO_TRACE_DLLIMPORT, - "DllImport error loading library: '%s'.", - error_msg); + "DllImport error loading library '%s'.", + error_msg); g_free (error_msg); } g_free (full_name); if (module) break; } + g_free (mdirname); } if (!module) { void *iter = NULL; - while ((full_name = mono_dl_build_path (".", file_name, &iter))) { + while ((full_name = mono_dl_build_path (NULL, file_name, &iter))) { mono_trace (G_LOG_LEVEL_INFO, MONO_TRACE_DLLIMPORT, - "DllImport loading library: '%s'.", full_name); + "DllImport loading location: '%s'.", full_name); module = cached_module_load (full_name, MONO_DL_LAZY, &error_msg); if (!module) { mono_trace (G_LOG_LEVEL_INFO, MONO_TRACE_DLLIMPORT, - "DllImport error loading library '%s'.", - error_msg); + "DllImport error loading library: '%s'.", + error_msg); g_free (error_msg); } g_free (full_name); only in patch2: unchanged: --- mono-2.6.7.orig/mono/metadata/verify-internals.h +++ mono-2.6.7/mono/metadata/verify-internals.h @@ -21,6 +21,8 @@ gboolean mono_verifier_is_method_full_trust (MonoMethod *method) MONO_INTERNAL; gboolean mono_verifier_is_class_full_trust (MonoClass *klass) MONO_INTERNAL; +gboolean mono_verifier_class_is_valid_generic_instantiation (MonoClass *class) MONO_INTERNAL; +gboolean mono_verifier_is_method_valid_generic_instantiation (MonoMethod *method) MONO_INTERNAL; gboolean mono_verifier_verify_class (MonoClass *klass) MONO_INTERNAL;