* SignedXml.cs : handle KeyInfoX509Data in GetPublicKey(). Fixed #1 of
bug #79454.
svn path=/trunk/mcs/; revision=65727
+2006-09-20 Atsushi Enomoto <atsushi@ximian.com>
+
+ * SignedXml.cs : handle KeyInfoX509Data in GetPublicKey(). Fixed #1 of
+ bug #79454.
+
2006-09-07 Atsushi Enomoto <atsushi@ximian.com>
* EncryptedXml.cs : DecryptData() should not pass block size to
AsymmetricAlgorithm key = null;
KeyInfoClause kic = (KeyInfoClause) pkEnumerator.Current;
+#if NET_2_0
+ if (kic is KeyInfoX509Data) {
+ foreach (X509Certificate cert in ((KeyInfoX509Data) kic).Certificates)
+ // FIXME: this GetRawCertData() should not be required, but it somehow causes crash.
+ return new X509Certificate2 (cert.GetRawCertData ()).PublicKey.Key;
+ }
+#endif
if (kic is DSAKeyValue)
key = DSA.Create ();
else if (kic is RSAKeyValue)