This is an important feature to make password prompts not block other unrelated 
network requests, and not require a nested event loop or multiple threads.
There are three places this feature is required:
1. sslErrors signal (QSslSocket and QNetworkReply)
 - QSslSocket done by Peter, QNetworkReply started by peter
2. authenticationRequired signal (QNetworkReply)
 - started by Peter
3. proxyAuthenticationRequired signal (QAbstractSocket and QNetworkReply)
 - not started

see 
https://qt.gitorious.org/~p--hartmann/qt/p--hartmanns-qtbase/commits/auth-pause-squashed
 for the work already done for QNetworkAccessManager.
I don't know if what the barriers are to us using this, as it's the state of 
his work before leaving Nokia.
If there are no legal issues, then we should work on top of that commit so that 
code attribution is correct.

The concept is that when pausing is enabled (via the pause mode opt-in), then 
the signals are asynchronous.
Currently, the application must synchronously fill in the QAuthenticator 
credentials (or process ssl errors) before returning control to the signal 
emission point.
With the opt in, then the application should instead call the resume slot when 
the credentials are available.

We need to be careful with any code that uses QAuthenticatorPrivate, as it is 
rather fragile.

Regarding binary compatibility:
The pause mode enumeration in QAbstractSocket can be split if required.
e.g. asynchronous ssl errors supported in 5.0, asynchronous proxy 
authentication in 5.1 by having two separate opt-in flags.
(three opt-in flags may be needed for QNetworkAccessManager)

Regarding source compatibility:
With the opt-in, we are backwardly source compatible with Qt4.
If we change the behaviour to be asynchronous by default (with or without an 
opt-out), then we would be source incompatible.

> -----Original Message-----
> From: [email protected]
> [mailto:[email protected]]
> On Behalf Of Jonas M. Gastal
> Sent: Monday, February 06, 2012 12:39
> To: [email protected]
> Subject: Re: [Development] Feature freeze and Alpha
>
> On Sunday 05 February 2012 14:12:48 [email protected] wrote:
> > These items are still open and we'll need feedback on them:
> > * network authentication and SLL errors without stalling QNAM
> > (QTBUG-16251, QTBUG-19032)
>
> Peter did some of the work on this: http://codereview.qt-
> project.org/13834
> I don't know if anyone is working on finishing it. I can try to carry
> this
> forward, but without knowing by when this would need to be done I can't
> make
> any promises.
>
> Gastal
> _______________________________________________
> Development mailing list
> [email protected]
> http://lists.qt-project.org/mailman/listinfo/development


________________________________
Subject to local law, communications with Accenture and its affiliates 
including telephone calls and emails (including content), may be monitored by 
our systems for the purposes of security and the assessment of internal 
compliance with Accenture policy.
______________________________________________________________________________________

www.accenture.com

_______________________________________________
Development mailing list
[email protected]
http://lists.qt-project.org/mailman/listinfo/development

Reply via email to