Hi,

while trying to set up certificate only authentication msmtp always
died with the following error message:

msmtp: the server does not support authentication

This is because my server (postfix) doesn't announce authentication
methods after completing the STARTTLS handshake.

If I read the docs correctly external auth is not meant to be used
together with another, interal auth method.

The following patch removes the auth check if external auth is used:

diff --git a/src/msmtp.c b/src/msmtp.c
index fe57010..f369b5e 100644
--- a/src/msmtp.c
+++ b/src/msmtp.c
@@ -663,7 +663,7 @@ int msmtp_rmqs(account_t *acc, int debug, const char 
*rmqs_argument,
     }
 
     /* authenticate */
-    if (acc->auth_mech)
+    if (acc->auth_mech && strcmp(acc->auth_mech, "EXTERNAL") != 0)
     {
         if (!(srv.cap.flags & SMTP_CAP_AUTH))
         {
@@ -1731,7 +1731,7 @@ int msmtp_sendmail(account_t *acc, list_t *recipients,
         return e;
     }
     /* authenticate */
-    if (acc->auth_mech)
+    if (acc->auth_mech && strcmp(acc->auth_mech, "EXTERNAL") != 0)
     {
         if (!(srv.cap.flags & SMTP_CAP_AUTH))
         {


Note:
The check in line 1735 was the one making the trouble.
I patched the on in line 667 only because the if-block looks the same.

Thanks for msmtp and regards,
Thomas

-- 
Thomas Weißschuh
xmpp:[email protected]
mailto:[email protected]

------------------------------------------------------------------------------
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
_______________________________________________
msmtp-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/msmtp-users

Reply via email to