[Mono-list] OpenSSL s_client talking to SslStream or SslServerStream

Peter Hultqvist phq at silentorbit.com
Wed Aug 8 21:46:28 UTC 2012


I'm writing an IMAP server that will accept SSL connections.

It is tested using openssl:
    openssl s_client -connect localhost:1993

On connection an IOException is thrown with an inner
NotSupportedException: "Unsupported security protocol type"

I have tried using two methods:

With the System.Net.Security.SslStream:

            ssl = new SslStream(tcp.GetStream(), false);
            ssl.BeginAuthenticateAsServer(
                Listener.Certificate,
                false,
                SslProtocols.Tls,
                false,
                AuthenticateSslCallback, null);

And with the Mono.Security.Protocol.Tls.SslServerStream:


                ssl = new SslServerStream(
                    tcp.GetStream(),
                    Listener.Certificate,
                    false,
                    true, SecurityProtocolType.Tls);

Both are generating the same exception mentioned above.

On http://www.mono-project.com/Cryptography it mentions Tls being
implemented but it only says 100% managed not whether it has complete
functionality.

This was all tested on Ubuntu, mono 2.10.8.1.
Finally I tried the first example on windows and it worked.

I'm not sure where to go from here, whether to look for other libraries
or file a bug?
Should I expect my code to work on mono?


More information about the Mono-list mailing list