Kaydet (Commit) 4a2e982f authored tarafından Szymon Kłos's avatar Szymon Kłos Kaydeden (comit) Andras Timar

tdf#84190 : when auth fails, don't remember passwords for cmis

Change-Id: Ia1e0d553556693e0efa6de0bfc6f8b0ae9d40b5d
Reviewed-on: https://gerrit.libreoffice.org/16688Tested-by: 's avatarJenkins <ci@libreoffice.org>
Reviewed-by: 's avatarMiklos Vajna <vmiklos@collabora.co.uk>
üst 99e256f3
...@@ -60,8 +60,9 @@ private: ...@@ -60,8 +60,9 @@ private:
bool bCanSetUserName, bool bCanSetUserName,
bool bCanSetPassword, bool bCanSetPassword,
bool bCanSetAccount, bool bCanSetAccount,
bool bAllowPersistentStoring, bool bAllowPersistentStoring,
bool bAllowUseSystemCredentials ); bool bAllowUseSystemCredentials,
bool bAllowSessionStoring = true );
public: public:
/** Specification whether some entity (realm, username, password, account) /** Specification whether some entity (realm, username, password, account)
...@@ -97,7 +98,8 @@ public: ...@@ -97,7 +98,8 @@ public:
const OUString & rPassword, const OUString & rPassword,
const OUString & rAccount, const OUString & rAccount,
bool bAllowPersistentStoring, bool bAllowPersistentStoring,
bool bAllowUseSystemCredentials ); bool bAllowUseSystemCredentials,
bool bAllowSessionStoring = true );
/** /**
......
...@@ -38,7 +38,7 @@ namespace cmis ...@@ -38,7 +38,7 @@ namespace cmis
m_sUrl, m_sBindingUrl, OUString(), m_sUrl, m_sBindingUrl, OUString(),
STD_TO_OUSTR( username ), STD_TO_OUSTR( username ),
STD_TO_OUSTR( password ), STD_TO_OUSTR( password ),
OUString(), true, false ); OUString(), true, false, false );
xIH->handle( xRequest.get() ); xIH->handle( xRequest.get() );
rtl::Reference< ucbhelper::InteractionContinuation > xSelection rtl::Reference< ucbhelper::InteractionContinuation > xSelection
......
...@@ -362,7 +362,6 @@ namespace cmis ...@@ -362,7 +362,6 @@ namespace cmis
ONEDRIVE_SCOPE, ONEDRIVE_REDIRECT_URI, ONEDRIVE_SCOPE, ONEDRIVE_REDIRECT_URI,
ONEDRIVE_CLIENT_ID, ONEDRIVE_CLIENT_SECRET ) ); ONEDRIVE_CLIENT_ID, ONEDRIVE_CLIENT_SECRET ) );
} }
m_pSession = libcmis::SessionFactory::createSession( m_pSession = libcmis::SessionFactory::createSession(
OUSTR_TO_STDSTR( m_aURL.getBindingUrl( ) ), OUSTR_TO_STDSTR( m_aURL.getBindingUrl( ) ),
rUsername, rPassword, OUSTR_TO_STDSTR( m_aURL.getRepositoryId( ) ), false, oauth2Data ); rUsername, rPassword, OUSTR_TO_STDSTR( m_aURL.getRepositoryId( ) ), false, oauth2Data );
...@@ -372,7 +371,8 @@ namespace cmis ...@@ -372,7 +371,8 @@ namespace cmis
uno::Sequence< uno::Any >( 0 ), uno::Sequence< uno::Any >( 0 ),
xEnv, xEnv,
OUString( ) ); OUString( ) );
m_pProvider->registerSession( sSessionId, m_pSession ); else
m_pProvider->registerSession( sSessionId, m_pSession );
} }
else else
{ {
......
...@@ -33,7 +33,8 @@ SimpleAuthenticationRequest::SimpleAuthenticationRequest( ...@@ -33,7 +33,8 @@ SimpleAuthenticationRequest::SimpleAuthenticationRequest(
const OUString & rPassword, const OUString & rPassword,
const OUString & rAccount, const OUString & rAccount,
bool bAllowPersistentStoring, bool bAllowPersistentStoring,
bool bAllowUseSystemCredentials ) bool bAllowUseSystemCredentials,
bool bAllowSessionStoring )
{ {
// Fill request... // Fill request...
...@@ -61,7 +62,8 @@ SimpleAuthenticationRequest::SimpleAuthenticationRequest( ...@@ -61,7 +62,8 @@ SimpleAuthenticationRequest::SimpleAuthenticationRequest(
true, true,
aRequest.HasAccount, aRequest.HasAccount,
bAllowPersistentStoring, bAllowPersistentStoring,
bAllowUseSystemCredentials ); bAllowUseSystemCredentials,
bAllowSessionStoring );
} }
...@@ -115,17 +117,29 @@ void SimpleAuthenticationRequest::initialize( ...@@ -115,17 +117,29 @@ void SimpleAuthenticationRequest::initialize(
bool bCanSetPassword, bool bCanSetPassword,
bool bCanSetAccount, bool bCanSetAccount,
bool bAllowPersistentStoring, bool bAllowPersistentStoring,
bool bAllowUseSystemCredentials ) bool bAllowUseSystemCredentials,
bool bAllowSessionStoring )
{ {
setRequest( uno::makeAny( rRequest ) ); setRequest( uno::makeAny( rRequest ) );
// Fill continuations... // Fill continuations...
uno::Sequence< ucb::RememberAuthentication > aRememberModes( unsigned int nSize = 1;
bAllowPersistentStoring ? 3 : 2 ); unsigned int nPos = 0;
aRememberModes[ 0 ] = ucb::RememberAuthentication_NO;
aRememberModes[ 1 ] = ucb::RememberAuthentication_SESSION; if( bAllowSessionStoring )
if (bAllowPersistentStoring) nSize++;
aRememberModes[ 2 ] = ucb::RememberAuthentication_PERSISTENT;
if( bAllowPersistentStoring )
nSize++;
uno::Sequence< ucb::RememberAuthentication > aRememberModes( nSize );
aRememberModes[ nPos++ ] = ucb::RememberAuthentication_NO;
if( bAllowSessionStoring )
aRememberModes[ nPos++ ] = ucb::RememberAuthentication_SESSION;
if ( bAllowPersistentStoring )
aRememberModes[ nPos++ ] = ucb::RememberAuthentication_PERSISTENT;
m_xAuthSupplier m_xAuthSupplier
= new InteractionSupplyAuthentication( = new InteractionSupplyAuthentication(
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment