Here is a simple test application that shows the problem. If I run this against a host that doesn't use username domains, I get a request for authentication. If I run it against one of the NTLM hosts with domain\user for usernames, it just writes finished. It should of course ask for authentication.
I have two test hosts for anyone who wants to try and fix this bug. If there's something I can do to fix it myself, I'd be very happy to hear about it. I have tested the problem on both 5.1.1 and 4.8.5. Same issue with both. Only tested on Windows using binary builds. Bo. Test case: #include <QCoreApplication> #include <QNetworkAccessManager> #include <QNetworkReply> class Connect : public QObject { Q_OBJECT public slots: void authRequired() { qDebug("auth required"); } void proxyAuthRequired() { qDebug("proxy auth required"); } void sslErrors() { qDebug("ssl errors"); } void finished() { qDebug("finished"); } }; int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); QNetworkAccessManager qnam; Connect c; QObject::connect(&qnam, SIGNAL(authenticationRequired(QNetworkReply*,QAuthenticator*)), &c, SLOT(authRequired())); QObject::connect(&qnam, SIGNAL(proxyAuthenticationRequired(QNetworkProxy,QAuthenticator*)), &c, SLOT(proxyAuthRequired())); QObject::connect(&qnam, SIGNAL(sslErrors(QNetworkReply*,QList<QSslError>)), &c, SLOT(sslErrors())); QObject::connect(&qnam, SIGNAL(finished(QNetworkReply*)), &c, SLOT(finished())); QNetworkRequest request(QUrl("https://host/EWS/Exchange.asmx")); request.setHeader(QNetworkRequest::ContentTypeHeader, "text/xml; charset=utf-8"); qnam.post(request, QByteArray()); return a.exec(); } #include "main.moc" Den 28-11-2013 11:28, Bo Thorsen skrev: > Den 27-11-2013 17:40, Thiago Macieira skrev: >> On quarta-feira, 27 de novembro de 2013 17:39:35, Mandeep Sandhu wrote: >>> Then it might be worth while to use a packet sniffer like wire-shark >>> (or some such) to see if the TCP connection is being abruptly closed >>> (by either client or server) or are you receiving some HTTP response >>> from the exchange server which then leads to the client closing the >>> connection. >>> >>> MS Exchange is known to non-standard compliant behaviour so I wouldn't >>> be surprised if it's doing something unexpected! >> >> I'm also guessing that he's using NTLM authentication. I don't think >> our code >> is wrong in Qt 4.8, but I wouldn't be surprised if we're wrong. > > That's pretty much exactly what I'm thinking. > > I have asked about the authentication but haven't heard from them. > > I will try and create a small self contained test case that shows the > problem. If there's someone here who thinks he might be able to fix the > problem, I think the customer won't mind if I give out the address of > their exchange machine. But I won't post it to the bug tracker. > > Bo. > -- Bo Thorsen, European Engineering Manager, ICS Integrated Computer Solutions. Delivering World-Class Applications http://ics.com/services _______________________________________________ Interest mailing list Interest@qt-project.org http://lists.qt-project.org/mailman/listinfo/interest