[devel] mono 1.2.5.2
Alexey Tourbin
=?iso-8859-1?q?at_=CE=C1_altlinux=2Eru?=
Сб Ноя 10 02:56:21 MSK 2007
On Tue, Nov 06, 2007 at 10:44:52PM +0300, Alexey Tourbin wrote:
> Я взялся за сборку mono. Отчасти это вызвано необходимостью пересборки
> mono с новым rpm-build-mono. Я также изменю некоторые зависимости, но
> распил пакетов пока всерьез менять не собираюсь. Результат будет
> представлен на обсуждение.
1.2.5.1-alt1-18-g1278470
git-log 1.2.5.1-alt1..
git-diff 1.2.5.1-alt1..
(приложено для осмотра)
----------- следующая часть -----------
commit 1278470406f3a46880b530a0af57bb750dfb61ec
Author: Alexey Tourbin <at на altlinux.ru>
Date: Sat Nov 10 02:23:18 2007 +0300
spec: rearranged *.pc files between subpackages (mono-nuint.pc was packaged twice)
commit 05c54e7b776d3ed9c3800a210d695635d1f69dd0
Author: Alexey Tourbin <at на altlinux.ru>
Date: Sat Nov 10 01:26:44 2007 +0300
dllmap.patch: removed libdb2_36.so, fixes ibm-data-db2 unmet dependency
commit 5bbfad6b53a71a94727fce283d930f75b1a2bb7d
Author: Alexey Tourbin <at на altlinux.ru>
Date: Sat Nov 10 00:11:47 2007 +0300
spec: mono-mcs requires rpm-build-mono
mcs(1) is mono compiler. The fact that we compile some
mono sources must automatically enable support for mono
dependencies.
commit 868b997393c44b3ccdf5f8c1819f052263a09813
Author: Alexey Tourbin <at на altlinux.ru>
Date: Sat Nov 10 00:03:05 2007 +0300
spec: updated interpackage dependencies (removed mono-devel dependency from mono-mcs)
mono-mcs can compile (not-so-) simple programs without any mono-*
subpackage (just with mono).
Also note that no subpackage should require *-devel package (except
for *-devel-static).
commit 71f9db9fd7f919f7c1da1041a1a8d4cec18e12a3
Author: Alexey Tourbin <at на altlinux.ru>
Date: Fri Nov 9 23:28:34 2007 +0300
spec: removed manual dependencies; they are wrong and/or outdated
commit 8f88217e2d198ef83ddce5fffdaf72fb4bb651f5
Author: Alexey Tourbin <at на altlinux.ru>
Date: Fri Nov 9 23:26:41 2007 +0300
spec: mono requires /proc
commit 15db2ca4a86a16b766d8cda9b268db76fb569bb2
Author: Alexey Tourbin <at на altlinux.ru>
Date: Fri Nov 9 18:46:14 2007 +0300
fixed dependencies on libgdk-x11-2.0.so.0 libgtk-x11-2.0.so.0
commit 67aca8c2e5ba8e94d6f943458a3a1bc0e39225e4
Author: Alexey Tourbin <at на altlinux.ru>
Date: Fri Nov 9 17:05:47 2007 +0300
fixed dependency on libgdiplus.so.0
commit 73a6186043096db028c00fc218d7204b3098dfdf
Author: Alexey Tourbin <at на altlinux.ru>
Date: Fri Nov 9 00:09:38 2007 +0300
spec: fixed 'rpm -bi --short-circuit' (removed %doc libgc-mono)
commit d6510a006def0fff02707528121ef6fa5008ef19
Author: Alexey Tourbin <at на altlinux.ru>
Date: Fri Nov 9 00:04:37 2007 +0300
spec: split libmono-devel
commit c4df6581d77a740cf42a186e4ea25f6de54b3383
Author: Alexey Tourbin <at на altlinux.ru>
Date: Fri Nov 9 00:00:22 2007 +0300
spec: added ldconfig scripts for libmono
commit f990f3182a0f9cdc097c7929c9d139ebce22f055
Author: Alexey Tourbin <at на altlinux.ru>
Date: Thu Nov 8 23:59:21 2007 +0300
spec: TODO: use system libgc
commit 0af925f48ec6ca0db2e520b4ce0c5c0fcdc9f01f
Author: Alexey Tourbin <at на altlinux.ru>
Date: Thu Nov 8 20:07:47 2007 +0300
disabled valgrind support (it works only on x86)
Dependency on libXt-devel was dropped probably due to autoreconf.
commit 568b92ca3d0c06b0b366f9db672ba385f5e94ea5
Author: Alexey Tourbin <at на altlinux.ru>
Date: Thu Nov 8 19:47:13 2007 +0300
spec: buildreq (manually removed gcc-c++ gcc-fortran)
commit 5cbb4a9ea51405dc2701bacf0bd050259c398aa3
Author: Alexey Tourbin <at на altlinux.ru>
Date: Thu Nov 8 19:04:18 2007 +0300
spec: pass '--disable-static' flag to configure so that libmono.so.0 is used by default
commit a16383a60ecb9973165f6d3c81e22a2b17066fab
Author: Alexey Tourbin <at на altlinux.ru>
Date: Thu Nov 8 17:39:38 2007 +0300
spec: split libmono and monodis packages
commit 9b8413ee0496ae98aa6870275d4e924bb6e4b75a
Author: Alexey Tourbin <at на altlinux.ru>
Date: Tue Nov 6 22:57:03 2007 +0300
spec: sync version
commit 1549cd83089d270162384f46561bf89e71f8982f
Author: Alexey Tourbin <at на altlinux.ru>
Date: Thu Oct 18 02:22:09 2007 +0400
http://go-mono.com/sources/mono/mono-1.2.5.2.tar.bz2
----------- следующая часть -----------
diff --git a/.gear-rules b/.gear-rules
index a3384cb..4e7c413 100644
--- a/.gear-rules
+++ b/.gear-rules
@@ -1 +1,2 @@
+copy: *.patch
tar.bz2: mono
diff --git a/mono-1.2.5-alt-dllmap.patch b/mono-1.2.5-alt-dllmap.patch
new file mode 100644
index 0000000..9c2167f
--- /dev/null
+++ b/mono-1.2.5-alt-dllmap.patch
@@ -0,0 +1,20 @@
+--- mono-1.2.5.2/data/config.in- 2007-11-10 01:24:00 +0300
++++ mono-1.2.5.2/data/config.in 2007-11-10 01:25:36 +0300
+@@ -7,14 +7,16 @@
+ <dllmap dll="i:odbc32.dll" target="libodbc на libsuffix@" os="!windows"/>
+ <dllmap dll="i:odbc32.dll" target="libiodbc.dylib" os="osx"/>
+ <dllmap dll="oci" target="libclntsh на libsuffix@" os="!windows"/>
+- <dllmap dll="db2cli" target="libdb2_36 на libsuffix@" os="!windows"/>
+ <dllmap dll="MonoPosixHelper" target="libMonoPosixHelper на libsuffix@" os="!windows" />
+ <dllmap dll="i:msvcrt" target="@LIBC@" os="!windows"/>
+ <dllmap dll="i:msvcrt.dll" target="@LIBC@" os="!windows"/>
+ <dllmap dll="sqlite" target="@SQLITE@" os="!windows"/>
+ <dllmap dll="sqlite3" target="@SQLITE3@" os="!windows"/>
+ <dllmap dll="libX11" target="@X11@" os="!windows" />
++ <dllmap dll="libgdk-x11-2.0.so" target="libgdk-x11-2.0.so.0" os="linux"/>
++ <dllmap dll="libgtk-x11-2.0.so" target="libgtk-x11-2.0.so.0" os="linux"/>
+ <dllmap dll="libcairo-2.dll" target="libcairo.so.2" os="!windows"/>
++ <dllmap dll="gdiplus.dll" target="libgdiplus.so.0" os="linux"/>
+ <dllmap dll="i:kernel32.dll">
+ <dllentry dll="__Internal" name="CopyMemory" target="mono_win32_compat_CopyMemory"/>
+ <dllentry dll="__Internal" name="FillMemory" target="mono_win32_compat_FillMemory"/>
diff --git a/mono-1.2.5-alt-no-valgrind.patch b/mono-1.2.5-alt-no-valgrind.patch
new file mode 100644
index 0000000..c949c90
--- /dev/null
+++ b/mono-1.2.5-alt-no-valgrind.patch
@@ -0,0 +1,14 @@
+--- mono-1.2.5.2/configure.in- 2007-11-08 16:25:22 +0000
++++ mono-1.2.5.2/configure.in 2007-11-08 16:47:44 +0000
+@@ -1837,11 +1837,6 @@ esac
+
+ AC_SUBST(libsuffix)
+
+-if test "x$TARGET" != "xAMD64"; then
+- # valgrind headers don't compile under x86-64
+- AC_CHECK_HEADERS(valgrind/memcheck.h)
+-fi
+-
+ if test "x$TARGET" = "xAMD64" -o "x$TARGET" = "xX86"; then
+ if test "x$with_tls" = "x__thread"; then
+ #
diff --git a/mono.spec b/mono.spec
index d6f6623..9f0362d 100644
--- a/mono.spec
+++ b/mono.spec
@@ -2,37 +2,40 @@
# * Implement parts of Mono Debian Policy
# * split into smaller packages
# * make *.config files for unsafe assemblies
+# * use system libgc
# * AOT ?
Name: mono
-Version: 1.2.5.1
+Version: 1.2.5.2
Release: alt1
License: LGPL
Url: http://www.mono-project.com/
-Source0: http://www.go-mono.com/sources/%name/%name-%version.tar.bz2
Group: Development/Other
Packager: Mono Maintainers Team <mono на packages.altlinux.org>
Summary: The mono CIL runtime, suitable for running .NET code
Summary(ru_RU.KOI8-R): Mono - open source ТЕБМЙЪБГЙС РМБФЖПТНЩ .NET
-Requires: libxml2,libxslt,libicu,libcairo
+Source: http://www.go-mono.com/sources/%name/%name-%version.tar.bz2
+Patch0: mono-1.2.5-alt-no-valgrind.patch
+Patch1: mono-1.2.5-alt-dllmap.patch
%def_with preview
BuildPreReq: rpm-build-mono
-BuildRequires: gcc-c++ glib2-devel imake libX11-devel libattr-devel libncurses-devel xorg-cf-files zlib-devel
-
-BuildRequires: /proc
-# My own optional buildrequires
-BuildRequires: libicu-devel libgdiplus-devel
-BuildRequires: bison
-BuildRequires: rsync
-BuildRequires: wget
+
+# Automatically added by buildreq on Thu Nov 08 2007
+BuildRequires: glib2-devel imake libX11-devel libattr-devel libncurses-devel xorg-cf-files zlib-devel
+
+Requires: /proc
+BuildPreReq: /proc
+
Obsoletes: mono-ikvm
Provides: mono-ikvm = %version-%release
Provides: mono-core = %version-%release
+Requires: libmono = %version-%release
+
%description
This package contains the core of the Mono runtime including its
Virtual Machine, Just-in-time compiler, security tools and libraries
@@ -62,7 +65,6 @@ ZipLib, I18N, Cairo and Mono.* )
%dir %_monodir/2.0
%dir %_monodir/gac
%_libdir/libikvm-native.so
-%_libdir/libmono.so*
%_libdir/libMonoPosixHelper.so
%_libdir/libMonoSupportW.so
%_monodir/*/certmgr.exe*
@@ -118,6 +120,7 @@ ZipLib, I18N, Cairo and Mono.* )
%_monodir/*/cscompmgd
%_monodir/*/cscompmgd.dll*
%_monodir/*/mscorlib.dll*
+%_pkgconfigdir/mono-cairo.pc
%doc %_man1dir/mono.*
%doc %_man1dir/mint.*
%doc %_man1dir/certmgr.*
@@ -130,10 +133,49 @@ ZipLib, I18N, Cairo and Mono.* )
%doc AUTHORS COPYING.LIB ChangeLog NEWS README
%exclude %_monodir/*/Mono.Security.Win32*
+%package -n libmono
+Summary: libmono.so.0 shared library
+Group: System/Libraries
+Conflicts: %name < %version-%release
+
+%description -n libmono
+This package contains libmono.so.0 shared library.
+
+%files -n libmono
+%_libdir/libmono.so.0*
+
+%package -n libmono-devel
+Summary: Header files for libmono.so.0 shared library
+Group: Development/C
+Requires: libmono = %version-%release
+
+%description -n libmono-devel
+This package contains header files for libmono.so.0 shared library.
+
+%files -n libmono-devel
+%_includedir/mono-1.0
+%_libdir/libmono.so
+%_pkgconfigdir/mono.pc
+
+%package -n monodis
+Summary: CIL image content dumper and disassembler
+Group: Development/Other
+Requires: libmono = %version-%release
+Provides: /usr/bin/monodis
+
+%description -n monodis
+The monodis program is used to dump the contents a CIL image (contained
+in .EXE files that contain extended PE/COFF CIL code).
+
+%files -n monodis
+%_bindir/monodis
+%_man1dir/monodis.1*
+
%package mcs
Summary: C# language compiler for Mono
Group: Development/Other
-Requires: %name-devel = %version-%release
+Requires: %name = %version-%release
+Requires: rpm-build-mono
Provides: %_bindir/mcs
Provides: %_bindir/gmcs
Obsoletes: mcs
@@ -153,7 +195,7 @@ This package contains the C# .NET compiler. This allows you to compile C#
%package jscript
Summary: JScript .NET support for Mono
Group: Development/Other
-Requires: %name-devel = %version-%release
+Requires: %name = %version-%release
%description jscript
This package contains the JScript .NET compiler and language
@@ -170,7 +212,6 @@ and assemblies.
Summary: Windows Forms implementation for Mono
Group: Development/Other
Requires: %name = %version-%release
-Requires: libgdiplus >= 1.2.3
Provides: mono-window-forms
Obsoletes: mono-window-forms
@@ -271,7 +312,7 @@ Universal database.
Summary: Development tools and headers for Mono
Group: Development/Other
Requires: %name = %version-%release
-Provides: /usr/bin/monodis
+Requires: monodis = %version-%release
%description devel
This package includes all Mono library headers and completes the
@@ -297,7 +338,6 @@ other various tools)
%_bindir/mkbundle
%_bindir/mkbundle2
# %%_bindir/monodiet
-%_bindir/monodis
%_bindir/monograph
%_bindir/monop
%_bindir/monop2
@@ -367,14 +407,12 @@ other various tools)
%_monodir/2.0/xbuild.rsp
%_monodir/*/monolinker.exe*
%_monogacdir/Mono.Cecil
-%_includedir/mono-1.0
-%_pkgconfigdir/*.pc
+%_pkgconfigdir/dotnet.pc
%_datadir/mono-1.0/mono/cil/cil-opcodes.xml
%doc %_mandir/man*/al.*
%doc %_mandir/man*/ilasm.*
%doc %_mandir/man*/genxs.*
%_mandir/man*/httpcfg.*
-%doc %_mandir/man*/monodis.*
%doc %_mandir/man*/makecert.*
%doc %_mandir/man*/monop.*
%doc %_mandir/man*/cert2spc.*
@@ -393,7 +431,6 @@ other various tools)
%doc %_man1dir/oldmono*
%doc %_man1dir/monolinker*
%doc %_man1dir/resgen*
-%doc libgc-mono
%package jay
Summary: Mono's port of Jay to C#
@@ -548,7 +585,6 @@ database.
Summary: sqlite database connectivity for Mono
Group: Development/Other
Requires: %name = %version-%release
-Requires: mono-data
%description data-sqlite
his package contains the ADO.NET Data provider for the sqlite
@@ -563,6 +599,9 @@ database.
%package complete
Summary: This package contains all runtime Mono packages
Group: Development/Other
+Requires: libmono = %version-%release
+Requires: libmono-devel = %version-%release
+Requires: monodis = %version-%release
Requires: %name = %version-%release
Requires: mono-locale-extras = %version-%release
Requires: mono-data = %version-%release
@@ -589,19 +628,25 @@ tools.
%files complete
%prep
-%setup -q -n %name-%version
+%setup -q
+%patch0 -p1
+%patch1 -p1
%build
+autoreconf
%undefine __libtoolize
-%configure %{subst_with preview}
+%configure --disable-static %{subst_with preview}
%make
%install
%make_install DESTDIR=%buildroot install
-mv %buildroot%_datadir/libgc-mono .
+rm -rv %buildroot%_datadir/libgc-mono
+
+%post -n libmono -p %post_ldconfig
+%postun -n libmono -p %postun_ldconfig
-%post -p /sbin/ldconfig
-%postun -p /sbin/ldconfig
+%post -p %post_ldconfig
+%postun -p %postun_ldconfig
%changelog
* Tue Oct 09 2007 Alexey Shabalin <shaba на altlinux.ru> 1.2.5.1-alt1
diff --git a/mono/ChangeLog b/mono/ChangeLog
index 6fb8a10..5b1602a 100644
--- a/mono/ChangeLog
+++ b/mono/ChangeLog
@@ -1,3 +1,7 @@
+2007-10-17 Wade Berrier <wberrier на novell.com>
+
+ * configure.in: version bump -> 1.2.5.2
+
2007-09-19 Wade Berrier <wberrier на novell.com>
* configure.in: version bump -> 1.2.5.1
diff --git a/mono/configure b/mono/configure
index ba5e1be..3759ea8 100755
--- a/mono/configure
+++ b/mono/configure
@@ -2507,7 +2507,7 @@ fi
# Define the identity of the package.
PACKAGE=mono
- VERSION=1.2.5.1
+ VERSION=1.2.5.2
cat >>confdefs.h <<_ACEOF
diff --git a/mono/configure.in b/mono/configure.in
index 037a5df..1abf85c 100644
--- a/mono/configure.in
+++ b/mono/configure.in
@@ -6,7 +6,7 @@ AC_CANONICAL_SYSTEM
m4_ifdef([_A][M_PROG_TAR],[_A][M_SET_OPTION([tar-ustar])])
AM_CONFIG_HEADER(config.h)
-AM_INIT_AUTOMAKE(mono,1.2.5.1)
+AM_INIT_AUTOMAKE(mono,1.2.5.2)
AM_MAINTAINER_MODE
API_VER=1.0
diff --git a/mono/mcs/build/common/Consts.cs b/mono/mcs/build/common/Consts.cs
index 4eb525f..9b0a0d3 100644
--- a/mono/mcs/build/common/Consts.cs
+++ b/mono/mcs/build/common/Consts.cs
@@ -46,7 +46,7 @@ internal
// Use these assembly version constants to make code more maintainable.
//
- public const string MonoVersion = "1.2.5.1";
+ public const string MonoVersion = "1.2.5.2";
#if NET_2_1
// Versions of .NET Framework 2.1 (SilverLight)
diff --git a/mono/mcs/class/System.Web/System.Web/ChangeLog b/mono/mcs/class/System.Web/System.Web/ChangeLog
index fc0abe3..24df9bf 100644
--- a/mono/mcs/class/System.Web/System.Web/ChangeLog
+++ b/mono/mcs/class/System.Web/System.Web/ChangeLog
@@ -1,3 +1,17 @@
+2007-10-17 Marek Habersack <mhabersack на novell.com>
+
+ * StaticFileHandler.cs: fixed an bug with Mono running under
+ Windows operating systems which caused XSP to return source of the
+ requested page if the file name used in the request ended in any
+ number of spaces or dots. The problem lies in the way the Win32
+ subsystem treats such file names - it ignores the trailing
+ characters and allows the calling application to open a file on
+ disk even when its name does not contain the trailing characters
+ used in the open request. Such file names may be supported by the
+ underlying filesystem (e.g. NTFS) but they are not supported by
+ the I/O Win32 subsystem. The security issue is reported in
+ CVE security report CVE-2007-5473. Fixes bug #332401
+
2007-07-22 Vladimir Krasnov <vladimirk на mainsoft.com>
* HttpServerUtility.cs: fixed Execute, SetCurrentExePath should be
diff --git a/mono/mcs/class/System.Web/System.Web/StaticFileHandler.cs b/mono/mcs/class/System.Web/System.Web/StaticFileHandler.cs
index 2d90e43..224fab5 100644
--- a/mono/mcs/class/System.Web/System.Web/StaticFileHandler.cs
+++ b/mono/mcs/class/System.Web/System.Web/StaticFileHandler.cs
@@ -31,18 +31,38 @@
using System;
using System.Globalization;
using System.IO;
+using System.Web.Util;
namespace System.Web
{
class StaticFileHandler : IHttpHandler
{
+ static bool runningWindows = RunningOnWindows ();
+
+ static bool RunningOnWindows ()
+ {
+ int pid = (int)Environment.OSVersion.Platform;
+ return (pid != 4 && pid != 128);
+ }
+
+ static bool ValidFileName (string fileName)
+ {
+ if (!runningWindows)
+ return true;
+
+ if (fileName == null || fileName.Length == 0)
+ return false;
+
+ return (!StrUtils.EndsWith (fileName, " ") && !StrUtils.EndsWith (fileName, "."));
+ }
+
public void ProcessRequest (HttpContext context)
{
HttpRequest request = context.Request;
HttpResponse response = context.Response;
string fileName = request.PhysicalPath;
FileInfo fi = new FileInfo (fileName);
- if (!fi.Exists)
+ if (!fi.Exists || !ValidFileName (fileName))
throw new HttpException (404, "File '" + request.FilePath + "' not found.");
if ((fi.Attributes & FileAttributes.Directory) != 0) {
diff --git a/mono/mcs/class/lib/monolite/System.Xml.dll b/mono/mcs/class/lib/monolite/System.Xml.dll
index a3f3e31..c263576 100755
Binary files a/mono/mcs/class/lib/monolite/System.Xml.dll and b/mono/mcs/class/lib/monolite/System.Xml.dll differ
diff --git a/mono/mcs/class/lib/monolite/System.dll b/mono/mcs/class/lib/monolite/System.dll
index 4a0ab00..38ba558 100755
Binary files a/mono/mcs/class/lib/monolite/System.dll and b/mono/mcs/class/lib/monolite/System.dll differ
diff --git a/mono/mcs/class/lib/monolite/mcs.exe b/mono/mcs/class/lib/monolite/mcs.exe
index c52b52a..d674f47 100755
Binary files a/mono/mcs/class/lib/monolite/mcs.exe and b/mono/mcs/class/lib/monolite/mcs.exe differ
diff --git a/mono/mcs/class/lib/monolite/mscorlib.dll b/mono/mcs/class/lib/monolite/mscorlib.dll
index dc28760..55bca27 100755
Binary files a/mono/mcs/class/lib/monolite/mscorlib.dll and b/mono/mcs/class/lib/monolite/mscorlib.dll differ
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип : application/pgp-signature
Размер : 189 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url : <http://lists.altlinux.org/pipermail/devel/attachments/20071110/c4c2721c/attachment-0002.bin>
Подробная информация о списке рассылки Devel