curl-library
NTML difference Mac/Win
Date: Mon, 25 Mar 2019 13:03:37 +0100
Hi,
A client has trouble sending emails via CURL, SMTP and NTLM authorization. MacOS works and Windows not.
MacOS:
* OK The Microsoft Exchange IMAP4 service is ready.
A001 CAPABILITY
* CAPABILITY IMAP4 IMAP4rev1 AUTH=NTLM AUTH=GSSAPI AUTH=PLAIN UIDPLUS CHILDREN IDLE NAMESPACE LITERAL+
A001 OK CAPABILITY completed.
A002 AUTHENTICATE NTLM
+
TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
+
...
A002 OK AUTHENTICATE completed.
…
Windows:
* OK The Microsoft Exchange IMAP4 service is ready.
A001 CAPABILITY
* CAPABILITY IMAP4 IMAP4rev1 AUTH=NTLM AUTH=GSSAPI AUTH=PLAIN UIDPLUS CHILDREN IDLE NAMESPACE LITERAL+
A001 OK CAPABILITY completed.
A002 AUTHENTICATE NTLM
+
TlRMTVNTUAABAAAABoIAAAAAAAAAAAAAAAAAAAAAAAA=
A002 NO AUTHENTICATE failed.
Closing connection 0
TLSv1.0 (OUT), TLS alert, Client hello (1):
4E544C4D53535000010000000682080000000000000000000000000000000000
4E544C4D53535000010000000682000000000000000000000000000000000000
.............................^
There is an 8 or not.
4E544C4D53535000 -> header
010000000 -> version
682000000 -> flags
000000000000000000000000000000
So this is NTLM2FLAG, set to NTLMFLAG_NEGOTIATE_NTLM2_KEY
#if defined(USE_NTRESPONSES) && defined(USE_NTLM2SESSION)
#define NTLM2FLAG NTLMFLAG_NEGOTIATE_NTLM2_KEY
#else
#define NTLM2FLAG 0
#endif
So why is this set on MacOS and not Windows?
Does someone know details?
I'll now try with an undef USE_WIN32_CRYPTO in ntml.c and see if it helps on Windows.
#undef USE_WIN32_CRYPTO
Sincerely
Christian
-- Read our blog about news on our plugins: http://www.mbsplugins.de/ ------------------------------------------------------------------- Unsubscribe: https://cool.haxx.se/list/listinfo/curl-library Etiquette: https://curl.haxx.se/mail/etiquette.htmlReceived on 2019-03-25