We're sorry Aspose doesn't work properply without JavaScript enabled.

Free Support Forum - aspose.com

SslException: illegal parameter on sending email on Mac (.NET Core)

I have started to see failures on my Mac for Aspose.Email when sending to SendGrid - this used to work, but no longer works, even when trying to move back to lower Aspose.Email versions.

Aspose.Email version: 19.4.0 (also tried 19.3.0 and 19.2.0)
Mac OS: 10.14.5 (previous version had same issue)
Platform: .Net
.Net Core runtime: 2.2.5
.Net Core SDK: 2.2.107

host: [smtp.sendgrid.com](http://smtp.sendgrid.com/)
port: 465
security: SSLImplicit

This is still working fine on Linux, its just on Mac that is not working any more…

The stack trace:

AsposeException: Authentication failed, see inner exception.
 ---> AsposeException: Authentication failed, see inner exception.
 ---> System.Security.Authentication.AuthenticationException: Authentication failed, see inner exception. ---> Interop+AppleCrypto+SslException: illegal parameter
   at Interop.AppleCrypto.SslSetMinProtocolVersion(SafeSslHandle sslHandle, SslProtocols minProtocolId)
   at System.Net.SafeDeleteSslContext.SetProtocols(SafeSslHandle sslContext, SslProtocols protocols)
   at System.Net.SafeDeleteSslContext.CreateSslContext(SafeFreeSslCredentials credential, Boolean isServer)
   at System.Net.SafeDeleteSslContext..ctor(SafeFreeSslCredentials credential, SslAuthenticationOptions sslAuthenticationOptions)
   at System.Net.Security.SslStreamPal.HandshakeInternal(SafeFreeCredentials credential, SafeDeleteContext& context, SecurityBuffer inputBuffer, SecurityBuffer outputBuffer, SslAuthenticationOptions sslAuthenticationOptions)
   --- End of inner exception stack trace ---
   at System.Net.Security.SslState.StartSendAuthResetSignal(ProtocolToken message, AsyncProtocolRequest asyncRequest, ExceptionDispatchInfo exception)
   at System.Net.Security.SslState.CheckCompletionBeforeNextReceive(ProtocolToken message, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.StartSendBlob(Byte[] incoming, Int32 count, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.ForceAuthentication(Boolean receiveFirst, Byte[] buffer, AsyncProtocolRequest asyncRequest)
   at System.Net.Security.SslState.ProcessAuthentication(LazyAsyncResult lazyResult)
   at System.Net.Security.SslStream.AuthenticateAsClient(SslClientAuthenticationOptions sslClientAuthenticationOptions)
   at   .()
   at   .Read(Byte[] , Int32 , Int32 )
   at   .Read(Byte[] , Int32 , Int32 )
   at   .     (Byte[] , Int32 , Int32 )
   at   .()
   at   .     (O␉┘␊␌├ )
--- E┼␍ ⎺° ␋┼┼␊⎼ ␊│␌␊⎻├␋⎺┼ ⎽├▒␌┐ ├⎼▒␌␊ ---
   ▒├   .     (IAsyncResult )
   at   .(Boolean )
   at   .(String , Int32 , SecurityOptions )
   at   .(String , Int32 )
--- End of inner exception stack trace ---
   at   .(String , Int32 )
   at   .(   )
   ▒├   .     (   )
   at   .     (AsyncCallback , Object )
   at   .     ()
   at   .     (Int32 ,    )
   at   .      ()
   at   .     (AsyncCallback , Object )
   at Aspose.Email.Clients.Smtp.SmtpClient.Send(MailMessage message)

Any help would be greatly appreciated.


Can you please share sample project along with source files so that we may further investigate to help you out.

@Adnan.Ahmad - This is no longer happening with the 2.2.300/301 builds of .Net, not sure what the cause was in the end.


It’s good to know that things are fine on your end. Please feel free to share if you have any incurring issue.