SHA256
1
0
forked from pool/mono-core

Accepting request 288198 from home:Mailaender:branches:Mono:Factory

required to get nuget to work again

OBS-URL: https://build.opensuse.org/request/show/288198
OBS-URL: https://build.opensuse.org/package/show/Mono:Factory/mono-core?expand=0&rev=141
This commit is contained in:
Marguerite Su 2015-03-04 10:36:21 +00:00 committed by Git OBS Bridge
parent 62d2d5bd5a
commit b6a94f4a16
3 changed files with 53 additions and 5 deletions

View File

@ -0,0 +1,39 @@
From afcb0baec2182503ed8de016bd6225cbb1c74191 Mon Sep 17 00:00:00 2001
From: Jo Shields <jo.shields@xamarin.com>
Date: Mon, 19 Jan 2015 14:32:22 +0000
Subject: [PATCH] Workaround for X509Certificate.RSA throwing an unhandled
exception in ASN1 parsing of certificates with ECC public keys only.
---
mcs/class/Mono.Security/Mono.Security.X509/X509Certificate.cs | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/mcs/class/Mono.Security/Mono.Security.X509/X509Certificate.cs b/mcs/class/Mono.Security/Mono.Security.X509/X509Certificate.cs
index 11be419..da39f9a 100644
--- a/mcs/class/Mono.Security/Mono.Security.X509/X509Certificate.cs
+++ b/mcs/class/Mono.Security/Mono.Security.X509/X509Certificate.cs
@@ -247,7 +247,7 @@ private byte[] GetUnsignedBigInteger (byte[] integer)
if (m_keyalgoparams == null)
throw new CryptographicException ("Missing key algorithm parameters.");
- if (_dsa == null) {
+ if (_dsa == null && m_keyalgo == "1.2.840.10040.4.1") {
DSAParameters dsaParams = new DSAParameters ();
// for DSA m_publickey contains 1 ASN.1 integer - Y
ASN1 pubkey = new ASN1 (m_publickey);
@@ -327,7 +327,7 @@ private byte[] GetUnsignedBigInteger (byte[] integer)
public virtual RSA RSA {
get {
- if (_rsa == null) {
+ if (_rsa == null && m_keyalgo == "1.2.840.113549.1.1.1") {
RSAParameters rsaParams = new RSAParameters ();
// for RSA m_publickey contains 2 ASN.1 integers
// the modulus and the public exponent
@@ -560,4 +560,4 @@ static byte[] PEM (string type, byte[] data)
return Convert.FromBase64String (base64);
}
}
-}
\ No newline at end of file
+}

View File

@ -1,3 +1,8 @@
-------------------------------------------------------------------
Sat Feb 28 10:35:11 UTC 2015 - mailaender@opensuse.org
- add X509Certificate-workaround.patch which fixes bxc#21298
------------------------------------------------------------------- -------------------------------------------------------------------
Sat Jan 24 09:41:00 UTC 2015 - mailaender@opensuse.org Sat Jan 24 09:41:00 UTC 2015 - mailaender@opensuse.org

View File

@ -42,6 +42,8 @@ Patch9: mono-core-ppc64le-callreg.diff
Patch10: mono-3.x-keyboards.resources-cp_r.patch Patch10: mono-3.x-keyboards.resources-cp_r.patch
# PATCH-FIX-UPSTREAM https://github.com/mono/mono/commit/b27d0248772e0b3288fba4f7328bfea1a6693689.patch # PATCH-FIX-UPSTREAM https://github.com/mono/mono/commit/b27d0248772e0b3288fba4f7328bfea1a6693689.patch
Patch11: gc-64bit-portability-warning.patch Patch11: gc-64bit-portability-warning.patch
# PATCH-FIX-UPSTREAM https://github.com/mono/mono/pull/1514.patch
Patch12: X509Certificate-workaround.patch
BuildRequires: autoconf BuildRequires: autoconf
BuildRequires: automake BuildRequires: automake
BuildRequires: bison BuildRequires: bison
@ -110,6 +112,7 @@ technologies that have been submitted to the ECMA for standardization.
%endif %endif
%patch10 -p1 %patch10 -p1
%patch11 -p1 %patch11 -p1
%patch12 -p1
%build %build
./autogen.sh ./autogen.sh
@ -1145,10 +1148,11 @@ Requires: mono-core = %{version}
NUnit is a unit-testing framework for all .Net languages. Initially NUnit is a unit-testing framework for all .Net languages. Initially
ported from JUnit, the current release, version 2.2, is the fourth ported from JUnit, the current release, version 2.2, is the fourth
major release of this Unit based unit testing tool for Microsoft .NET. major release of this Unit based unit testing tool for Microsoft .NET.
It is written entirely in C# and has been completely redesigned to It is written entirely in C# and has been completely redesigned to
take advantage of many .NET language features, for example take advantage of many .NET language features, for example custom
custom attributes and other reflection related capabilities. NUnit attributes and other reflection related capabilities.
brings xUnit to all .NET languages.
NUnit brings xUnit to all .NET languages.
%files -n mono-nunit %files -n mono-nunit
%defattr(-, root, root) %defattr(-, root, root)
@ -1187,10 +1191,10 @@ brings xUnit to all .NET languages.
Summary: Mono development tools Summary: Mono development tools
License: LGPL-2.1 License: LGPL-2.1
Group: Development/Languages/Mono Group: Development/Languages/Mono
Requires: ca-certificates
Requires: libgdiplus-devel Requires: libgdiplus-devel
Requires: mono-core = %{version} Requires: mono-core = %{version}
# Required because they are referenced by .pc files # Required because they are referenced by .pc files
Requires: ca-certificates
Requires: mono-data = %{version} Requires: mono-data = %{version}
Requires: mono-data-oracle = %{version} Requires: mono-data-oracle = %{version}
Requires: mono-extras = %{version} Requires: mono-extras = %{version}