title: Issues getting application to work, .NET WebsphereMQ (IBM.XMS) with SSL
body: <p>I'm trying to connect to a channel for pub/sub by topic. I'm running in unmanaged mode because that's the only mode that supports SSL. I've specified the <code>CIPHER SPEC</code> and <code>KEY_REPO</code> where the key is <code>key.kdb</code> in the same directory as the application (<em>I've also tried the full path to the key store but that doesn't work either</em>). There is an associated <code>key.sth</code> in there contaning the password (encrypted) for using the certificate. Below is the code snippet, less connection strings and other sensitive info.</p>
  
  <pre><code>XMSFactoryFactory factoryFactory = XMSFactoryFactory.GetInstance(XMSC.CT_WMQ);
  IConnectionFactory connectionFactory = factoryFactory.CreateConnectionFactory();
  
  connectionFactory.SetIntProperty(XMSC.WMQ_CONNECTION_MODE, XMSC.WMQ_CM_CLIENT_UNMANAGED);
  
  connectionFactory.SetStringProperty(XMSC.WMQ_HOST_NAME, "hostName");
  connectionFactory.SetIntProperty(XMSC.WMQ_PORT, 1234);
  connectionFactory.SetStringProperty(XMSC.WMQ_CHANNEL, "Channel");
  connectionFactory.SetStringProperty(XMSC.WMQ_QUEUE_MANAGER, "QueueManager");
  
  connectionFactory.SetStringProperty(XMSC.WMQ_SSL_CIPHER_SPEC, "NULL_SHA");
  connectionFactory.SetStringProperty(XMSC.WMQ_SSL_KEY_REPOSITORY, @"key");
  
  connection = connectionFactory.CreateConnection();
  </code></pre>
  
  <p>I get the following exception in Visual Studio, which just tells me that the MQ Client has thrown an error.</p>
  
  <pre><code>CWSMQ0006E: An exception was received during the call to the method 
  ConnectionFactory.CreateConnection: CompCode: 2, Reason: 2393. During 
  execution of the specified method an exception was thrown by another 
  component. See the linked exception for more information.
  </code></pre>
  
  <p>I can see the specific error thrown by the MQ Client through the event log, below.</p>
  
  <pre><code>No SSL certificate for channel 'SECUREQUEUE.SVRCONN'.  
  
  The channel 'SECUREQUEUE.SVRCONN' did not supply a certificate to use during 
  SSL handshaking, but a certificate is required by the remote queue manager. 
  The channel did not start.  
  
  Ensure that the key repository of the local queue manager or MQ client contains an 
  SSL certificate which is associated with the queue manager or client. Alternatively,
  if appropriate, change the remote channel definition so that its SSLCAUTH attribute 
  is set to OPTIONAL and it has no SSLPEER value set. &amp;P If you have migrated from 
  WebSphere MQ V5.3 to V6, it is possible that the missing certificate is due to a 
  failure during SSL key repository migration. Check the relevant error logs. If 
  these show that an orphan certificate was encountered then you should obtain the 
  relevant missing certification authority (signer) certificates and then import 
  these and the orphan certificate into the WebSphere MQ V6 key repository, and then
  re-start the channel.
  </code></pre>
  
  <p>I can't seem to figure out what's wrong with this set up.. Any ideas?</p>