[mono/f14/master] Move xbuild.exe and dependencies into -devel sub-package (BZ 671917) Ensure that the symbolic links
chkr
chkr at fedoraproject.org
Mon Mar 14 23:58:37 UTC 2011
commit c54ed4c7e25ef2c453ce47c56e5d6bff16448bdc
Author: Christian Krause <chkr at fedoraproject.org>
Date: Tue Mar 15 00:58:33 2011 +0100
Move xbuild.exe and dependencies into -devel sub-package (BZ 671917)
Ensure that the symbolic links and the actual libraries in the GAC are
always in the same sub-package
CVE-2010-4159 (BZ 654405)
CVE-2010-4254 (BZ 659911)
...ric-instantions-for-constraint-violations.patch | 112 ++++++++++++++++
...eric-instance-verification-is-security-is.patch | 38 ++++++
0001-Fix-corlib-testsuite-crash.patch | 30 ++++
...-invalid-instantiation-of-generic-methods.patch | 79 +++++++++++
...dllimported-shared-libs-in-the-base-direc.patch | 63 +++++++++
mono.spec | 139 ++++++++++++-------
6 files changed, 410 insertions(+), 51 deletions(-)
---
diff --git a/0001-Check-generic-instantions-for-constraint-violations.patch b/0001-Check-generic-instantions-for-constraint-violations.patch
new file mode 100644
index 0000000..5a7c23d
--- /dev/null
+++ b/0001-Check-generic-instantions-for-constraint-violations.patch
@@ -0,0 +1,112 @@
+From bde0d1f7aa16004144b21927d2ff8bfec5b1b33a Mon Sep 17 00:00:00 2001
+From: Rodrigo Kumpera <kumpera at gmail.com>
+Date: Thu, 25 Nov 2010 14:37:23 -0200
+Subject: [PATCH] Check generic instantions for constraint violations.
+
+ * class.c (mono_class_init): Check instantiations of generic
+ instances.
+
+ * icall.c (ves_icall_Type_MakeGenericType): Ditto.
+
+ * verify.c: Add mono_verifier_class_is_valid_generic_instantiation
+ to the internal API so generic instances can be checked.
+
+ Fixes #654136
+---
+ mono/metadata/class.c | 3 +++
+ mono/metadata/icall.c | 6 ++++++
+ mono/metadata/verify-internals.h | 1 +
+ mono/metadata/verify.c | 15 +++++++++++++++
+ 4 files changed, 25 insertions(+), 0 deletions(-)
+
+diff --git a/mono/metadata/class.c b/mono/metadata/class.c
+index 7db29ce..62d613a 100644
+--- a/mono/metadata/class.c
++++ b/mono/metadata/class.c
+@@ -4530,6 +4530,9 @@ mono_class_init (MonoClass *class)
+ 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 --git a/mono/metadata/icall.c b/mono/metadata/icall.c
+index ec86027..8a31c8e 100644
+--- a/mono/metadata/icall.c
++++ b/mono/metadata/icall.c
+@@ -67,6 +67,7 @@
+ #include <mono/metadata/security-core-clr.h>
+ #include <mono/metadata/mono-perfcounters.h>
+ #include <mono/metadata/mono-debug.h>
++#include <mono/metadata/verify-internals.h>
+ #include <mono/io-layer/io-layer.h>
+ #include <mono/utils/strtod.h>
+ #include <mono/utils/monobitset.h>
+@@ -2432,6 +2433,7 @@ ves_icall_Type_GetGenericTypeDefinition_impl (MonoReflectionType *type)
+ static MonoReflectionType*
+ ves_icall_Type_MakeGenericType (MonoReflectionType *type, MonoArray *type_array)
+ {
++ MonoClass *class;
+ MonoType *geninst, **types;
+ int i, count;
+
+@@ -2450,6 +2452,10 @@ ves_icall_Type_MakeGenericType (MonoReflectionType *type, MonoArray *type_array)
+ if (!geninst)
+ return NULL;
+
++ class = mono_class_from_mono_type (geninst);
++ if (!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);
+ }
+
+diff --git a/mono/metadata/verify-internals.h b/mono/metadata/verify-internals.h
+index 6019b31..f73b010 100644
+--- a/mono/metadata/verify-internals.h
++++ b/mono/metadata/verify-internals.h
+@@ -21,6 +21,7 @@ gboolean mono_verifier_is_enabled_for_class (MonoClass *klass) MONO_INTERNAL;
+
+ 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_verify_class (MonoClass *klass) MONO_INTERNAL;
+
+diff --git a/mono/metadata/verify.c b/mono/metadata/verify.c
+index d522ac5..b678ed7 100644
+--- a/mono/metadata/verify.c
++++ b/mono/metadata/verify.c
+@@ -6526,6 +6526,13 @@ mono_verifier_verify_class (MonoClass *class)
+ return FALSE;
+ return TRUE;
+ }
++
++gboolean
++mono_verifier_class_is_valid_generic_instantiation (MonoClass *class)
++{
++ return mono_class_is_valid_generic_instantiation (NULL, class);
++}
++
+ #else
+
+ gboolean
+@@ -6597,4 +6604,12 @@ mono_image_verify_tables (MonoImage *image, int level)
+ /* The verifier was disabled at compile time */
+ return NULL;
+ }
++
++gboolean
++mono_verifier_class_is_valid_generic_instantiation (MonoClass *class)
++{
++ return TRUE;
++}
++
++
+ #endif
+--
+1.7.3.4
+
diff --git a/0001-Disable-generic-instance-verification-is-security-is.patch b/0001-Disable-generic-instance-verification-is-security-is.patch
new file mode 100644
index 0000000..dee9daf
--- /dev/null
+++ b/0001-Disable-generic-instance-verification-is-security-is.patch
@@ -0,0 +1,38 @@
+From 556423c2cbadc1b6c912d891e54c1ab111a3f749 Mon Sep 17 00:00:00 2001
+From: Rodrigo Kumpera <kumpera at gmail.com>
+Date: Mon, 29 Nov 2010 12:39:32 -0200
+Subject: [PATCH] Disable generic instance verification is security is off.
+
+ * verify.c: If security is not enabled don't perform
+ instance verification as 2.6 SRE/mcs can't couple with it.
+
+ Fix System.dll build regression.
+---
+ mono/metadata/verify.c | 4 ++++
+ 1 files changed, 4 insertions(+), 0 deletions(-)
+
+diff --git a/mono/metadata/verify.c b/mono/metadata/verify.c
+index 2b393a9..50a7224 100644
+--- a/mono/metadata/verify.c
++++ b/mono/metadata/verify.c
+@@ -6530,6 +6530,8 @@ mono_verifier_verify_class (MonoClass *class)
+ 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);
+ }
+
+@@ -6538,6 +6540,8 @@ 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);
+ }
+
+--
+1.7.3.4
+
diff --git a/0001-Fix-corlib-testsuite-crash.patch b/0001-Fix-corlib-testsuite-crash.patch
new file mode 100644
index 0000000..f171fe7
--- /dev/null
+++ b/0001-Fix-corlib-testsuite-crash.patch
@@ -0,0 +1,30 @@
+From 472119d9436d2707ce7239e8d6e2ca6e3da8d6f3 Mon Sep 17 00:00:00 2001
+From: Rodrigo Kumpera <kumpera at gmail.com>
+Date: Tue, 23 Nov 2010 18:51:22 -0200
+Subject: [PATCH] Fix corlib testsuite crash.
+
+ * icall.c (ves_icall_Type_MakeGenericType): We can inflate
+ into the gtd and the verifier function is not able to handle
+ it.
+---
+ mono/metadata/icall.c | 4 +++-
+ 1 files changed, 3 insertions(+), 1 deletions(-)
+
+diff --git a/mono/metadata/icall.c b/mono/metadata/icall.c
+index 8a31c8e..ec2daf5 100644
+--- a/mono/metadata/icall.c
++++ b/mono/metadata/icall.c
+@@ -2453,7 +2453,9 @@ ves_icall_Type_MakeGenericType (MonoReflectionType *type, MonoArray *type_array)
+ return NULL;
+
+ class = mono_class_from_mono_type (geninst);
+- if (!mono_verifier_class_is_valid_generic_instantiation (class))
++
++ /*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);
+--
+1.7.3.4
+
diff --git a/0001-Handle-invalid-instantiation-of-generic-methods.patch b/0001-Handle-invalid-instantiation-of-generic-methods.patch
new file mode 100644
index 0000000..736a5b0
--- /dev/null
+++ b/0001-Handle-invalid-instantiation-of-generic-methods.patch
@@ -0,0 +1,79 @@
+From 4905ef1130feb26c3150b28b97e4a96752e0d399 Mon Sep 17 00:00:00 2001
+From: Rodrigo Kumpera <kumpera at gmail.com>
+Date: Thu, 25 Nov 2010 14:23:31 -0200
+Subject: [PATCH] Handle invalid instantiation of generic methods.
+
+ * verify.c: Add new function to internal verifier API to check
+ method instantiations.
+
+ * reflection.c (mono_reflection_bind_generic_method_parameters):
+ Check the instantiation before returning it.
+
+ Fixes #655847
+---
+ mono/metadata/reflection.c | 3 +++
+ mono/metadata/verify-internals.h | 1 +
+ mono/metadata/verify.c | 15 +++++++++++++++
+ 3 files changed, 19 insertions(+), 0 deletions(-)
+
+diff --git a/mono/metadata/reflection.c b/mono/metadata/reflection.c
+index 3ba44ea..f7905f6 100644
+--- a/mono/metadata/reflection.c
++++ b/mono/metadata/reflection.c
+@@ -10176,6 +10176,9 @@ mono_reflection_bind_generic_method_parameters (MonoReflectionMethod *rmethod, M
+ 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 --git a/mono/metadata/verify-internals.h b/mono/metadata/verify-internals.h
+index f73b010..a95cc5d 100644
+--- a/mono/metadata/verify-internals.h
++++ b/mono/metadata/verify-internals.h
+@@ -22,6 +22,7 @@ gboolean mono_verifier_is_enabled_for_class (MonoClass *klass) MONO_INTERNAL;
+ 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;
+
+diff --git a/mono/metadata/verify.c b/mono/metadata/verify.c
+index b678ed7..2b393a9 100644
+--- a/mono/metadata/verify.c
++++ b/mono/metadata/verify.c
+@@ -6533,6 +6533,14 @@ mono_verifier_class_is_valid_generic_instantiation (MonoClass *class)
+ 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;
++ return mono_method_is_valid_generic_instantiation (NULL, method);
++}
++
+ #else
+
+ gboolean
+@@ -6611,5 +6619,12 @@ mono_verifier_class_is_valid_generic_instantiation (MonoClass *class)
+ return TRUE;
+ }
+
++gboolean
++mono_verifier_is_method_valid_generic_instantiation (MonoMethod *method)
++{
++ return TRUE;
++}
++
++
+
+ #endif
+--
+1.7.3.4
+
diff --git a/0001-Search-for-dllimported-shared-libs-in-the-base-direc.patch b/0001-Search-for-dllimported-shared-libs-in-the-base-direc.patch
new file mode 100644
index 0000000..85615a3
--- /dev/null
+++ b/0001-Search-for-dllimported-shared-libs-in-the-base-direc.patch
@@ -0,0 +1,63 @@
+From 8e890a3bf80a4620e417814dc14886b1bbd17625 Mon Sep 17 00:00:00 2001
+From: Paolo Molaro <lupus at oddwiz.org>
+Date: Tue, 12 Oct 2010 15:53:25 +0200
+Subject: [PATCH] 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. Fixes bug# 641915.
+---
+ mono/metadata/loader.c | 18 ++++++++++--------
+ 1 files changed, 10 insertions(+), 8 deletions(-)
+
+diff --git a/mono/metadata/loader.c b/mono/metadata/loader.c
+index 4e9a152..db126b8 100644
+--- a/mono/metadata/loader.c
++++ b/mono/metadata/loader.c
+@@ -1340,32 +1340,34 @@ mono_lookup_pinvoke_call (MonoMethod *method, const char **exc_class, const char
+
+ 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);
+--
+1.7.3.4
+
diff --git a/mono.spec b/mono.spec
index 4a9578f..67414dc 100644
--- a/mono.spec
+++ b/mono.spec
@@ -8,7 +8,7 @@
Name: mono
Version: 2.6.7
-Release: 3%{?dist}
+Release: 4%{?dist}
Summary: A .NET runtime environment
Group: Development/Languages
@@ -56,6 +56,18 @@ Patch4: mono-2.0-monoservice.patch
Patch5: mono-2.6-metadata-makefile.patch
Patch6: mono-242-libgdiplusconfig.patch
Patch7: mono-264-libdir.patch
+# CVE-2010-4159
+# https://github.com/mono/mono/commit/8e890a3bf80a4620e417814dc14886b1bbd17625
+Patch8: 0001-Search-for-dllimported-shared-libs-in-the-base-direc.patch
+# CVE-2010-4254 (and some required additional upstream commits)
+# https://github.com/mono/mono/commit/bde0d1f7aa16004144b21927d2ff8bfec5b1b33a
+Patch9: 0001-Check-generic-instantions-for-constraint-violations.patch
+# https://github.com/mono/mono/commit/4905ef1130feb26c3150b28b97e4a96752e0d399
+Patch10: 0001-Handle-invalid-instantiation-of-generic-methods.patch
+# https://github.com/mono/mono/commit/556423c2cbadc1b6c912d891e54c1ab111a3f749
+Patch11: 0001-Disable-generic-instance-verification-is-security-is.patch
+# https://github.com/mono/mono/commit/472119d9436d2707ce7239e8d6e2ca6e3da8d6f3
+Patch12: 0001-Fix-corlib-testsuite-crash.patch
%if %{with_mono4}
Obsoletes: mono-mono-4-preview < 2.6.4
@@ -284,6 +296,8 @@ Development file for monodoc
Summary: Provides preview code for C# 4
Group: Development/Languages
Requires: mono-core = %{version}-%{release}
+# mono-4-preview is contains both runtime and devel files
+Requires: mono-devel
%description -n mono-4-preview
Preview for the new C# 4.0 code
@@ -293,6 +307,12 @@ Preview for the new C# 4.0 code
%define gac_dll(dll) %{monodir}/gac/%{1} \
%{monodir}/?.0/%{1}.dll \
%{nil}
+%define gac_dll_123_only(dll) %{monodir}/gac/%{1}/[123]*\
+ %{monodir}/[123].0/%{1}.dll \
+ %{nil}
+%define gac_dll_4_only(dll) %{monodir}/gac/%{1}/[4]*\
+ %{monodir}/4.0/%{1}.dll \
+ %{nil}
%define gac_dll_2(dll) %{monodir}/gac/%{1} \
%{monodir}/?.5/%{1}.dll \
%{nil}
@@ -300,8 +320,8 @@ Preview for the new C# 4.0 code
%{monodir}/2.1/%{1}.dll \
%{nil}
%define mono_bin(bin) %{_bindir}/%{1} \
- %{monodir}/?.0/%{1}.exe \
- %{monodir}/?.0/%{1}.exe.* \
+ %{monodir}/1.0/%{1}.exe \
+ %{monodir}/1.0/%{1}.exe.* \
%{nil}
%define mono_bin_1(bin, dll) %{_bindir}/%{1} \
%{monodir}/1.0/%{2}.exe \
@@ -332,7 +352,11 @@ sed -i -e 's!%{_libdir}!@libdir@!' %{PATCH7}
sed -i -e 's!$(prefix)/lib/!%{_libdir}/!' docs/Makefile.{am,in}
sed -i -e 's!${prefix}/lib/!%{_libdir}/!' data/monodoc.pc.in
sed -i -e 's!${prefix}/lib/!%{_libdir}/!' data/mono-cairo.pc.in
-
+%patch8 -p1 -b .CVE-2010-4159
+%patch9 -p1 -b .CVE-2010-4254-1
+%patch10 -p1 -b .CVE-2010-4254-2
+%patch11 -p1 -b .CVE-2010-4254-3
+%patch12 -p1 -b .CVE-2010-4254-4
autoreconf -f -i -s
# Add undeclared Arg
@@ -378,9 +402,7 @@ install -p -m0644 %{SOURCE2} %{buildroot}%{_sysconfdir}/pki/mono/
# This was removed upstream:
%{__rm} -fr %{buildroot}%{monodir}/gac/Mono.Security.Win32/[124]*
-%{__rm} -rf %{buildroot}%{monodir}/1.0/Mono.Security.Win32.dll
-%{__rm} -rf %{buildroot}%{monodir}/2.0/Mono.Security.Win32.dll
-%{__rm} -rf %{buildroot}%{monodir}/4.0/Mono.Security.Win32
+%{__rm} -rf %{buildroot}%{monodir}/[124].0/Mono.Security.Win32.dll
%{__rm} %{buildroot}%{_datadir}/libgc-mono/README*
%{__rm} %{buildroot}%{_datadir}/libgc-mono/barrett_diagram
%{__rm} %{buildroot}%{_datadir}/libgc-mono/*.html
@@ -414,24 +436,22 @@ install -p -m0644 %{SOURCE2} %{buildroot}%{_sysconfdir}/pki/mono/
%{_bindir}/monodir
%{_bindir}/mono-test-install
%{_bindir}/mono-gdb.py
-%mono_bin lc
+%mono_bin_2 lc lc
%mono_bin certmgr
%mono_bin chktrust
-%mono_bin csharp
+%mono_bin_2 csharp csharp
%mono_bin gacutil
+%mono_bin_2 gacutil2 gacutil
%{_bindir}/gacutil1
-%{_bindir}/gacutil2
-%mono_bin gmcs
+%mono_bin_2 gmcs gmcs
%mono_bin mcs
-%mono_bin xbuild
%{_bindir}/mcs1
%mono_bin mozroots
%mono_bin setreg
%mono_bin sn
-%mono_bin pdb2mdb
-%mono_bin sqlmetal
-%mono_bin svcutil
-%{monodir}/2.0/System.Xml.Linq.dll
+%mono_bin_2 pdb2mdb pdb2mdb
+%mono_bin_2 sqlmetal sqlmetal
+%mono_bin_2 svcutil svcutil
%{_libdir}/libmono.so.*
%{_libdir}/libmono-profiler-logging.so.*
%{_mandir}/man1/certmgr.1.gz
@@ -453,6 +473,8 @@ install -p -m0644 %{SOURCE2} %{buildroot}%{_sysconfdir}/pki/mono/
%dir %{monodir}/3.5
%dir %{monodir}/gac
%dir %{monodir}/compat-*
+%dir %{_libdir}/mono/gac/System.Xml.Linq
+%gac_dll_123_only System.Xml.Linq
%gac_dll Commons.Xml.Relaxng
%gac_dll I18N
%gac_dll I18N.West
@@ -482,7 +504,6 @@ install -p -m0644 %{SOURCE2} %{buildroot}%{_sysconfdir}/pki/mono/
%gac_dll System.Xml
%gac_dll Mono.Tasklets
%gac_dll WindowsBase
-%{monodir}/gac/System.Xml.Linq
%{monodir}/?.0/mscorlib.dll
%{monodir}/?.0/mscorlib.dll.mdb
%dir %{_sysconfdir}/mono
@@ -494,56 +515,51 @@ install -p -m0644 %{SOURCE2} %{buildroot}%{_sysconfdir}/pki/mono/
%config (noreplace) %{_sysconfdir}/mono/2.0/machine.config
%config (noreplace) %{_sysconfdir}/mono/2.0/settings.map
%{_libdir}/mono-source-libs/
-%{monodir}/compat-2.0/System.Web.Mvc.dll
-%if %{with_mono4}
-%{_libdir}/mono/gac/Microsoft.Build.Tasks.v4.0/4.0*
-%{_libdir}/mono/gac/Microsoft.Build.Utilities.v4.0/4.0*
-%endif
%files devel
%defattr(-,root,root,-)
%{_sysconfdir}/pki/mono/
%{_bindir}/mono-api-*
-%{monodir}/?.0/mono-api-info*
+%{monodir}/2.0/mono-api-info*
%{_bindir}/monodis
%{_bindir}/al1
-%mono_bin_1 al al
+%mono_bin al
%mono_bin_2 al2 al
%mono_bin caspol
%mono_bin cert2spc
%mono_bin cilc
%mono_bin dtd2xsd
%mono_bin dtd2rng
-%mono_bin_1 genxs1 genxs
-%{_bindir}/genxs
-%mono_bin sgen
-%{monodir}/?.0/installutil.*
+%mono_bin genxs
+%{_bindir}/genxs1
+%mono_bin_2 sgen sgen
+%{monodir}/1.0/installutil.*
+%{monodir}/2.0/installutil.*
%mono_bin installvst
-%mono_bin_1 ilasm ilasm
+%mono_bin ilasm
%{_bindir}/ilasm1
%mono_bin_2 ilasm2 ilasm
%mono_bin macpack
%mono_bin makecert
%mono_bin mkbundle
+%mono_bin_2 mkbundle2 mkbundle
%{_bindir}/mkbundle1
-%{_bindir}/mkbundle2
%mono_bin mono-cil-strip
-%mono_bin monolinker
-%mono_bin_1 monop monop
+%mono_bin_2 monolinker monolinker
+%mono_bin monop
%{_bindir}/monop1
%mono_bin_2 monop2 monop
-%mono_bin mono-shlib-cop
-%mono_bin mono-xmltool
+%mono_bin_2 mono-shlib-cop mono-shlib-cop
+%mono_bin_2 mono-xmltool mono-xmltool
%{_bindir}/pedump
%mono_bin permview
%mono_bin prj2make
%{_bindir}/resgen1
-%mono_bin_1 resgen resgen
+%mono_bin resgen
%mono_bin_2 resgen2 resgen
%{_mandir}/man1/resgen.1.gz
%mono_bin secutil
%mono_bin signcode
-%mono_bin xbuild
%{monodir}/1.0/ictool.exe
%{monodir}/1.0/ictool.exe.mdb
%{_mandir}/man1/al.1.gz
@@ -567,9 +583,12 @@ install -p -m0644 %{SOURCE2} %{buildroot}%{_sysconfdir}/pki/mono/
%{_mandir}/man1/sgen.1.gz
%{_mandir}/man1/signcode.1.gz
%{_mandir}/man1/xbuild.1.gz
-%gac_dll PEAPI
-%gac_dll Microsoft.Build.Engine
-%gac_dll Microsoft.Build.Framework
+%dir %{_libdir}/mono/gac/PEAPI
+%gac_dll_123_only PEAPI
+%dir %{_libdir}/mono/gac/Microsoft.Build.Engine
+%gac_dll_123_only Microsoft.Build.Engine
+%dir %{_libdir}/mono/gac/Microsoft.Build.Framework
+%gac_dll_123_only Microsoft.Build.Framework
%gac_dll Microsoft.Build.Tasks
%gac_dll Microsoft.Build.Utilities
%gac_dll_2 Microsoft.Build.Tasks.v3.5
@@ -608,10 +627,11 @@ install -p -m0644 %{SOURCE2} %{buildroot}%{_sysconfdir}/pki/mono/
%dir %{_datadir}/mono-1.0/mono
%dir %{_datadir}/mono-1.0/mono/cil
%{_libdir}/mono/1.0/culevel*
+%mono_bin_2 xbuild xbuild
%files nunit
%defattr(-,root,root,-)
-%mono_bin_1 nunit-console nunit-console
+%mono_bin nunit-console
%mono_bin_2 nunit-console2 nunit-console
%gac_dll nunit.core
%gac_dll nunit.framework
@@ -641,7 +661,7 @@ install -p -m0644 %{SOURCE2} %{buildroot}%{_sysconfdir}/pki/mono/
%files extras
%defattr(-,root,root,-)
%{_mandir}/man1/mono-service.1.gz
-%mono_bin_1 mono-service mono-service
+%mono_bin mono-service
%mono_bin_2 mono-service2 mono-service
%{monodir}/gac/mono-service
%gac_dll System.Configuration.Install
@@ -680,14 +700,15 @@ install -p -m0644 %{SOURCE2} %{buildroot}%{_sysconfdir}/pki/mono/
%gac_dll System.Web.Mvc
%gac_dll System.Web.Routing
%gac_dll System.Web.Services
+%{monodir}/compat-2.0/System.Web.Mvc.dll
%mono_bin disco
-%mono_bin mconfig
+%mono_bin_2 mconfig mconfig
%mono_bin soapsuds
-%mono_bin_1 wsdl wsdl
+%mono_bin wsdl
%{_bindir}/wsdl1
%mono_bin_2 wsdl2 wsdl
%mono_bin_2 xsd2 xsd
-%mono_bin_1 xsd xsd
+%mono_bin xsd
%{_mandir}/man1/disco.1.gz
%{_mandir}/man1/mconfig.1.gz
%{_mandir}/man1/soapsuds.1.gz
@@ -699,7 +720,7 @@ install -p -m0644 %{SOURCE2} %{buildroot}%{_sysconfdir}/pki/mono/
%config (noreplace) %{_sysconfdir}/mono/2.0/DefaultWsdlHelpGenerator.aspx
%config (noreplace) %{_sysconfdir}/mono/mconfig/config.xml
%config (noreplace) %{_sysconfdir}/mono/2.0/web.config
-%mono_bin httpcfg
+%mono_bin_2 httpcfg httpcfg
%{_mandir}/man1/httpcfg.1.gz
%files web-devel
@@ -721,7 +742,7 @@ install -p -m0644 %{SOURCE2} %{buildroot}%{_sysconfdir}/pki/mono/
%files data
%defattr(-,root,root,-)
-%mono_bin sqlsharp
+%mono_bin_2 sqlsharp sqlsharp
%{_mandir}/man1/sqlsharp.1.gz
%gac_dll System.Data
%gac_dll System.Data.DataSetExtensions
@@ -769,7 +790,7 @@ install -p -m0644 %{SOURCE2} %{buildroot}%{_sysconfdir}/pki/mono/
%{_libdir}/mono/gac/monodoc
%{_libdir}/monodoc/*
%{_libdir}/mono/monodoc/monodoc.dll
-%mono_bin mdoc
+%mono_bin_2 mdoc mdoc
%{_bindir}/mdoc-*
%{_bindir}/mdass*
%{_bindir}/mdval*
@@ -793,17 +814,33 @@ install -p -m0644 %{SOURCE2} %{buildroot}%{_sysconfdir}/pki/mono/
%{_bindir}/dmcs
%{monodir}/4.0/*.exe
%{monodir}/4.0/*.exe.*
-%{monodir}/4.0/Mono.Security.Win32.dll
-%{monodir}/4.0/System.Xml.Linq.dll
+%gac_dll_4_only System.Xml.Linq
%{monodir}/4.0/MSBuild/Microsoft*
-%{monodir}/4.0/Microsoft*
+%{monodir}/4.0/Microsoft.Build.Tasks.*.dll
+%{monodir}/4.0/Microsoft.Build.xsd
+%{monodir}/4.0/Microsoft.Build.Utilities.*.dll
+%{monodir}/4.0/Microsoft.CSharp.targets
+%{monodir}/4.0/Microsoft.Common.*
+%{monodir}/4.0/Microsoft.VisualBasic.targets
%gac_dll Microsoft.CSharp
+%{monodir}/4.0/xbuild.rsp
%{_libdir}/mono/gac/System.Data.Services/4.0*
%gac_dll System.Dynamic
-%{monodir}/4.0/xbuild*
+%{_libdir}/mono/gac/Microsoft.Build.Tasks.v4.0/4.0*
+%{_libdir}/mono/gac/Microsoft.Build.Utilities.v4.0/4.0*
+%gac_dll_4_only PEAPI
+%gac_dll_4_only Microsoft.Build.Engine
+%gac_dll_4_only Microsoft.Build.Framework
%endif
%changelog
+* Tue Mar 15 2011 Christian Krause <chkr at fedoraproject.org> - 2.6.7-4
+- Move xbuild.exe and dependencies into -devel sub-package (BZ 671917)
+- Ensure that the symbolic links and the actual libraries in the GAC are
+ always in the same sub-package
+- CVE-2010-4159 (BZ 654405)
+- CVE-2010-4254 (BZ 659911)
+
* Wed Jul 21 2010 Paul F. Johnson <paul at all-the-johnsons.co.uk> 2.6.7-3
- Bump to full release
- Remove patch 8 (preview-4 patch)
More information about the scm-commits
mailing list