This is an automated email from the git hooks/post-receive script. x2go pushed a change to branch master in repository x2goclient. from 74e4162 onmainwindow.cpp: fix building with Qt 4.6, currently the latest version available in EPEL 6. new 9ced742 src/sshmasterconnection.{cpp,h}: skip checkLogin() if hostname starts with "!". The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Summary of changes: debian/changelog | 9 +++++++++ src/sshmasterconnection.cpp | 17 +++++++++++++++++ src/sshmasterconnection.h | 1 + 3 files changed, 27 insertions(+) -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/x2goclient.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository x2goclient. commit 9ced7425c1f2ae042abf08682b6627b1c400a9be Author: Ulrich Sibiller <uli42@gmx.de> Date: Sun Jun 16 18:47:40 2019 +0200 src/sshmasterconnection.{cpp,h}: skip checkLogin() if hostname starts with "!". Some special ssh proxies will not allow arbitrary commands. checkLogin() will break these sessions because it tries to run the echo command on the proxy. By specifying a "!" as the first character of the (proxy) hostname you can instruct x2goclient ot skip the checkLogin() call altogether. Note that this will break proxies that require you to change you password or some other type of interaction. As this is added to SshMasterConnection it is also valid to specify that for the server hostname although this is not very useful. --- debian/changelog | 9 +++++++++ src/sshmasterconnection.cpp | 17 +++++++++++++++++ src/sshmasterconnection.h | 1 + 3 files changed, 27 insertions(+) diff --git a/debian/changelog b/debian/changelog index 9c6ba95..aa49a65 100644 --- a/debian/changelog +++ b/debian/changelog @@ -135,6 +135,15 @@ x2goclient (4.1.2.2-0x2go1) UNRELEASED; urgency=medium [ Ulrich Sibiller ] * New upstream release (4.1.2.2): - src/sshmasterconnection.cpp: close channel on failure in checkLogin (). + - src/sshmasterconnection.{cpp,h}: skip checkLogin() if hostname starts + with "!". Some special ssh proxies will not allow arbitrary commands. + checkLogin() will break these sessions because it tries to run the echo + command on the proxy. By specifying a "!" as the first character of the + (proxy) hostname you can instruct x2goclient ot skip the checkLogin() + call altogether. Note that this will break proxies that require you to + change you password or some other type of interaction. As this is added + to SshMasterConnection it is also valid to specify that for the server + hostname although this is not very useful. -- X2Go Release Manager <git-admin@x2go.org> Tue, 26 Jun 2018 00:39:28 +0200 diff --git a/src/sshmasterconnection.cpp b/src/sshmasterconnection.cpp index e9cb6d9..2e638e9 100644 --- a/src/sshmasterconnection.cpp +++ b/src/sshmasterconnection.cpp @@ -169,6 +169,16 @@ SshMasterConnection::SshMasterConnection (QObject* parent, QString host, int por << "; useproxy " << useproxy << "; proxyserver " << proxyserver << "; proxyport " << proxyport; this->host=host; + // If the hostname starts with "!" do not perform loginCheck() for this connection + if (this->host.indexOf("!") == 0) + { + this->loginCheck=false; + this->host.remove(0, 1); + } + else + { + this->loginCheck=true; + } this->port=port; this->user=user; this->pass=pass; @@ -678,7 +688,14 @@ void SshMasterConnection::run() x2goDebug<<"User authentication OK."; // checkLogin() is currently specific to libssh. if(kerberos) + { emit connectionOk(host); + } + else if(this->loginCheck == false) + { + x2goDebug<<"Skipping Login Check as requested by configuration"; + emit connectionOk(host); + } else { if(checkLogin()) diff --git a/src/sshmasterconnection.h b/src/sshmasterconnection.h index 69bfa0d..ec66619 100644 --- a/src/sshmasterconnection.h +++ b/src/sshmasterconnection.h @@ -213,6 +213,7 @@ private: SshMasterConnection* sshProxy; bool sshProxyReady; bool breakLoop; + bool loginCheck; bool challengeAuthPasswordAccepted; QString challengeAuthVerificationCode; -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/x2goclient.git