Hi there!

I am experiencing the same problem with two remote smtp servers. A third
one works fine though. I googled around a little bit, but couldn't find
too much information about this specific error message. My guess would
be, that the default requirements for the mentioned 'Diffie Hellman
prime' has been raised in newer versions of libgnutls13. I have
therefore applied a simple patch to msmtp which simply lowers the
requirements while initiating the tls session (patch is attached):

       [in src/tls.c]
  +    /* set minimum size of acceptable Diffie Hellman prime */
  +    gnutls_dh_set_prime_bits(tls->session, 512);

While this solves the problem for me, there might be a good reason why
this requirement has been raised in the first place. So maybe not msmtp
needs patching, but rather all these smtp servers that use 'not
acceptable primes'. :-) But I don't have enough knowledge about this
area to judge that.

Best regards,

Jan
--- msmtp-1.4.13.orig/src/tls.c	2007-07-16 14:19:37.000000000 -0600
+++ msmtp-1.4.13/src/tls.c	2007-09-23 13:46:10.000000000 -0600
@@ -998,6 +998,10 @@
 	gnutls_certificate_free_credentials(tls->cred);
 	return TLS_ELIBFAILED;
     }
+
+    /* set minimum size of acceptable Diffie Hellman prime */
+    gnutls_dh_set_prime_bits(tls->session, 512);
+
     return TLS_EOK;
     
 #endif /* HAVE_LIBGNUTLS */

Reply via email to