activemq-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From tab...@apache.org
Subject svn commit: r929159 - in /activemq/activemq-dotnet/Apache.NMS.ActiveMQ/trunk/src/main/csharp/Transport/Tcp: SslTransport.cs SslTransportFactory.cs
Date Tue, 30 Mar 2010 14:52:11 GMT
Author: tabish
Date: Tue Mar 30 14:52:11 2010
New Revision: 929159

URL: http://svn.apache.org/viewvc?rev=929159&view=rev
Log:
http://issues.apache.org/activemq/browse/AMQNET-239

Adds the ability to override the name supplied for the Server Certificate

Modified:
    activemq/activemq-dotnet/Apache.NMS.ActiveMQ/trunk/src/main/csharp/Transport/Tcp/SslTransport.cs
    activemq/activemq-dotnet/Apache.NMS.ActiveMQ/trunk/src/main/csharp/Transport/Tcp/SslTransportFactory.cs

Modified: activemq/activemq-dotnet/Apache.NMS.ActiveMQ/trunk/src/main/csharp/Transport/Tcp/SslTransport.cs
URL: http://svn.apache.org/viewvc/activemq/activemq-dotnet/Apache.NMS.ActiveMQ/trunk/src/main/csharp/Transport/Tcp/SslTransport.cs?rev=929159&r1=929158&r2=929159&view=diff
==============================================================================
--- activemq/activemq-dotnet/Apache.NMS.ActiveMQ/trunk/src/main/csharp/Transport/Tcp/SslTransport.cs
(original)
+++ activemq/activemq-dotnet/Apache.NMS.ActiveMQ/trunk/src/main/csharp/Transport/Tcp/SslTransport.cs
Tue Mar 30 14:52:11 2010
@@ -27,6 +27,7 @@ namespace Apache.NMS.ActiveMQ.Transport.
 {
     public class SslTransport : TcpTransport
     {
+        private string serverName;
         private string clientCertLocation;
         private string clientCertPassword;
         
@@ -45,6 +46,17 @@ namespace Apache.NMS.ActiveMQ.Transport.
         }
 
         /// <summary>
+        /// Indicates the name of the Server's Certificate.  By default the Host name
+        /// of the remote server is used, however if this doesn't match the name of the
+        /// Server's certificate then this option can be set to override the default.
+        /// </summary>
+        public string ServerName
+        {
+            get { return this.serverName; }
+            set { this.serverName = value; }
+        }
+
+        /// <summary>
         /// Indicates the location of the Client Certificate to use when the Broker
         /// is configured for Client Auth (not common).  The SslTransport will supply
         /// this certificate to the SslStream via the SelectLocalCertificate method.
@@ -97,8 +109,9 @@ namespace Apache.NMS.ActiveMQ.Transport.
 
             try
             {
-                Tracer.Debug("Authorizing as Client for Server: " + this.RemoteAddress.Host);
-                sslStream.AuthenticateAsClient(this.RemoteAddress.Host);
+                string remoteCertName = this.serverName ?? this.RemoteAddress.Host;
+                Tracer.Debug("Authorizing as Client for Server: " + remoteCertName);
+                sslStream.AuthenticateAsClient(remoteCertName);
                 Tracer.Debug("Server is Authenticated = " + sslStream.IsAuthenticated);
                 Tracer.Debug("Server is Encrypted = " + sslStream.IsEncrypted);         
      
             }

Modified: activemq/activemq-dotnet/Apache.NMS.ActiveMQ/trunk/src/main/csharp/Transport/Tcp/SslTransportFactory.cs
URL: http://svn.apache.org/viewvc/activemq/activemq-dotnet/Apache.NMS.ActiveMQ/trunk/src/main/csharp/Transport/Tcp/SslTransportFactory.cs?rev=929159&r1=929158&r2=929159&view=diff
==============================================================================
--- activemq/activemq-dotnet/Apache.NMS.ActiveMQ/trunk/src/main/csharp/Transport/Tcp/SslTransportFactory.cs
(original)
+++ activemq/activemq-dotnet/Apache.NMS.ActiveMQ/trunk/src/main/csharp/Transport/Tcp/SslTransportFactory.cs
Tue Mar 30 14:52:11 2010
@@ -23,6 +23,7 @@ namespace Apache.NMS.ActiveMQ.Transport.
 {
 	public class SslTransportFactory : TcpTransportFactory
 	{
+        private string serverName;
         private string clientCertLocation;
         private string clientCertPassword;
         private bool acceptInvalidBrokerCert = false;
@@ -31,6 +32,12 @@ namespace Apache.NMS.ActiveMQ.Transport.
         {
         }
 
+        public string ServerName
+        {
+            get { return this.serverName; }
+            set { this.serverName = value; }
+        }
+
         public string ClientCertLocation
         {
             get { return this.clientCertLocation; }



Mime
View raw message