Author: atsushi
Date: 2007-02-20 11:41:56 -0500 (Tue, 20 Feb 2007)
New Revision: 73191
Modified:
trunk/olive/class/System.ServiceModel/System.ServiceModel.Security/ChangeLog
trunk/olive/class/System.ServiceModel/System.ServiceModel.Security/WSSecurityTokenSerializer.cs
Log:
2007-02-20 Atsushi Enomoto <[EMAIL PROTECTED]>
* WSSecurityTokenSerializer.cs : handle X509 issue serial key
identifier clauses.
Modified:
trunk/olive/class/System.ServiceModel/System.ServiceModel.Security/ChangeLog
===================================================================
---
trunk/olive/class/System.ServiceModel/System.ServiceModel.Security/ChangeLog
2007-02-20 16:36:28 UTC (rev 73190)
+++
trunk/olive/class/System.ServiceModel/System.ServiceModel.Security/ChangeLog
2007-02-20 16:41:56 UTC (rev 73191)
@@ -1,3 +1,8 @@
+2007-02-20 Atsushi Enomoto <[EMAIL PROTECTED]>
+
+ * WSSecurityTokenSerializer.cs : handle X509 issue serial key
+ identifier clauses.
+
2007-02-16 Atsushi Enomoto <[EMAIL PROTECTED]>
* WSSecurityTokenSerializer.cs : set cipher value as wrapped key
Modified:
trunk/olive/class/System.ServiceModel/System.ServiceModel.Security/WSSecurityTokenSerializer.cs
===================================================================
---
trunk/olive/class/System.ServiceModel/System.ServiceModel.Security/WSSecurityTokenSerializer.cs
2007-02-20 16:36:28 UTC (rev 73190)
+++
trunk/olive/class/System.ServiceModel/System.ServiceModel.Security/WSSecurityTokenSerializer.cs
2007-02-20 16:41:56 UTC (rev 73191)
@@ -266,6 +266,16 @@
{
reader.ReadStartElement ();
reader.MoveToContent ();
+ if (reader.NamespaceURI ==
SignedXml.XmlDsigNamespaceUrl) {
+ KeyInfoX509Data x509 = new KeyInfoX509Data ();
+ x509.LoadXml (new XmlDocument ().ReadNode
(reader) as XmlElement);
+ if (x509.IssuerSerials.Count == 0)
+ throw new XmlException
("'X509IssuerSerial' element is expected inside 'X509Data' element");
+ X509IssuerSerial s = (X509IssuerSerial)
x509.IssuerSerials [0];
+ reader.MoveToContent ();
+ reader.ReadEndElement ();
+ return new X509IssuerSerialKeyIdentifierClause
(s.IssuerName, s.SerialNumber);
+ }
if (reader.NamespaceURI != Constants.WssNamespace)
throw new XmlException (String.Format
("Unexpected SecurityTokenReference content: expected local name 'Reference'
and namespace URI '{0}' but found local name '{1}' and namespace '{2}'.",
Constants.WssNamespace, reader.LocalName, reader.NamespaceURI));
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches