This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository x2goclient. commit ac6547b5d3c27ff4cd07d90d7a369a18d11111d7 Author: Oleksandr Shneyder <o.shneyder@phoca-gmbh.de> Date: Fri Apr 1 12:34:47 2022 -0600 - Support for OPENSSH PRIVATE KEY format sent from broker. - Do not show client in broker mode if startet in "hidden" mode. --- debian/changelog | 2 ++ src/httpbrokerclient.cpp | 10 ++++++++++ src/onmainwindow.cpp | 5 +++-- 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/debian/changelog b/debian/changelog index 2fed819..c80d73b 100644 --- a/debian/changelog +++ b/debian/changelog @@ -36,6 +36,8 @@ x2goclient (4.1.2.3-0x2go1) UNRELEASED; urgency=medium - Support for rootless X2GoKdrive sessions. - Fixed build with Qt5 on Windows. - Do not show empty folders in session explorer. + - Support for OPENSSH PRIVATE KEY format sent from broker. + - Do not show client in broker mode if startet in "hidden" mode. [ Ryan Schmidt ] * New upstream version (4.1.2.3): diff --git a/src/httpbrokerclient.cpp b/src/httpbrokerclient.cpp index 88fbdc3..bf40919 100644 --- a/src/httpbrokerclient.cpp +++ b/src/httpbrokerclient.cpp @@ -820,6 +820,8 @@ void HttpBrokerClient::parseSession(QString sinfo) int keyStartPos=sinfo.indexOf("-----BEGIN DSA PRIVATE KEY-----"); if(keyStartPos==-1) keyStartPos=sinfo.indexOf("-----BEGIN RSA PRIVATE KEY-----"); + if(keyStartPos==-1) + keyStartPos=sinfo.indexOf("-----BEGIN OPENSSH PRIVATE KEY-----"); QString endStr="-----END DSA PRIVATE KEY-----"; int keyEndPos=sinfo.indexOf(endStr); if(keyEndPos==-1) @@ -827,8 +829,16 @@ void HttpBrokerClient::parseSession(QString sinfo) endStr="-----END RSA PRIVATE KEY-----"; keyEndPos=sinfo.indexOf(endStr); } + if(keyEndPos==-1) + { + endStr="-----END OPENSSH PRIVATE KEY-----"; + keyEndPos=sinfo.indexOf(endStr); + } if (! (keyEndPos == -1 || keyStartPos == -1 || lst.size()==0)) + { + x2goDebug<<"Found key for authentication"; config->key=sinfo.mid(keyStartPos, keyEndPos+endStr.length()-keyStartPos); + } QString serverLine=(lst[1].split("\n"))[0]; QStringList words=serverLine.split(":",QString::SkipEmptyParts); config->serverIp=words[0]; diff --git a/src/onmainwindow.cpp b/src/onmainwindow.cpp index 6eb2680..9be99d4 100644 --- a/src/onmainwindow.cpp +++ b/src/onmainwindow.cpp @@ -2951,7 +2951,7 @@ void ONMainWindow::slotSelectedFromList ( SessionButton* session ) slotSessEnter(); return; } - if ( startHidden && nopass==false ) + if ( startHidden && nopass==false && (!brokerMode) ) { startHidden=false; slotResize(); @@ -12131,7 +12131,8 @@ void ONMainWindow::processSessionConfig() line.remove(QRegExp("\\s+$")); if ( ( line=="-----BEGIN DSA PRIVATE KEY-----" ) || - ( line=="-----BEGIN RSA PRIVATE KEY-----" ) ) + ( line=="-----BEGIN RSA PRIVATE KEY-----" ) || + ( line=="-----BEGIN OPENSSH PRIVATE KEY-----" )) { while ( i<lines.count() ) config.key+=lines[i++] +"\n"; -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/x2goclient.git