This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository x2goclient. commit 5c1e4373afa6af9017b5a6a312a6cec962125fc3 Author: Mihai Moldovan <ionic@ionic.de> Date: Fri Jan 29 00:37:03 2016 +0100 sshmasterconnection.cpp: let challenge-auth-based login attempts fallback to normal password authentication if the initial challenge-auth-based attempt was unsuccessful. --- debian/changelog | 3 +++ src/sshmasterconnection.cpp | 21 ++++++++++++++++----- 2 files changed, 19 insertions(+), 5 deletions(-) diff --git a/debian/changelog b/debian/changelog index d8d113a..879a379 100644 --- a/debian/changelog +++ b/debian/changelog @@ -28,6 +28,9 @@ x2goclient (4.0.5.1-0x2go1) UNRELEASED; urgency=low - onmainwindow.cpp: use lowercase version of locale. Fixes: #953. Fixes loading up the nb_NO translation file, which is actually baked as nb_no into the binary. + - sshmasterconnection.cpp: let challenge-auth-based login attempts + fallback to normal password authentication if the initial + challenge-auth-based attempt was unsuccessful. * debian/control: - Change apache2-dev | libc6-dev build dependency back to apache2-dev only. Otherwise, apache2-dev is not installed at all, even though diff --git a/src/sshmasterconnection.cpp b/src/sshmasterconnection.cpp index 82e7cca..942b374 100644 --- a/src/sshmasterconnection.cpp +++ b/src/sshmasterconnection.cpp @@ -946,6 +946,8 @@ bool SshMasterConnection::userChallengeAuth() bool SshMasterConnection::userAuthWithPass() { + bool ret = false; + // Populate the userauth_list ssh_userauth_none(my_ssh_session, NULL); @@ -957,11 +959,19 @@ bool SshMasterConnection::userAuthWithPass() x2goDebug<<"Challenge authentication requested."<<endl; #endif challengeAuthPasswordAccepted=false; - return userChallengeAuth(); + ret = userChallengeAuth(); + } + + if (!ret) { + x2goDebug << "Challenge authentication failed. Trying password mechanism if available." << endl; } - if (method & SSH_AUTH_METHOD_PASSWORD) + if ((!ret) && (method & SSH_AUTH_METHOD_PASSWORD)) { + if (!ret) { + x2goDebug << "Password mechanism available. Continuing." << endl; + } + #ifdef DEBUG x2goDebug<<"Password authentication requested."<<endl; #endif @@ -973,12 +983,13 @@ bool SshMasterConnection::userAuthWithPass() #ifdef DEBUG x2goDebug<<"userAuthWithPass failed:" <<err<<endl; #endif - return false; } - return true; + else { + ret = true; + } } - return false; + return (ret); } -- Alioth's /srv/git/code.x2go.org/x2goclient.git//..//_hooks_/post-receive-email on /srv/git/code.x2go.org/x2goclient.git