[X2go-Commits] x2goclient.git - master (branch) updated: 3.0.1.18-51-g9a9cf3c

X2go dev team git-admin at x2go.org
Wed Jul 20 13:07:59 CEST 2011


The branch, master has been updated
       via  9a9cf3cd1a655ce2d13fad4b060c290433991182 (commit)
       via  b123aaa45596b77229e74a5c4922bf4c412d6925 (commit)
       via  6d416e90158c358f28537a63726ed6e37129da4f (commit)
       via  bea17e3a83f63a5e8bd964de3b8c601055c9f4ae (commit)
      from  34f39898b958bc37bd93c24f5605e0c90c0ac78e (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 9a9cf3cd1a655ce2d13fad4b060c290433991182
Author: Oleksandr Shneyder <oleksandr.shneyder at treuchtlingen.de>
Date:   Wed Jul 20 13:07:10 2011 +0200

    fixed loadbalancing in LDAP mode
    
    * fixed loadbalancing in LDAP mode on multiply X2Go servers
    * fixed session crash by pulling out of smart card

commit b123aaa45596b77229e74a5c4922bf4c412d6925
Author: Oleksandr Shneyder <oleksandr.shneyder at treuchtlingen.de>
Date:   Wed Jul 20 12:55:21 2011 +0200

    if user pull out the smart card, suspending session instead of terminating proxy

commit 6d416e90158c358f28537a63726ed6e37129da4f
Author: Oleksandr Shneyder <oleksandr.shneyder at treuchtlingen.de>
Date:   Wed Jul 20 12:36:39 2011 +0200

    openning ssh master connection for each x2go server by multiply server LDAP setup. Need for loadbalancing

commit bea17e3a83f63a5e8bd964de3b8c601055c9f4ae
Author: Oleksandr Shneyder <oleksandr.shneyder at treuchtlingen.de>
Date:   Tue Jul 19 14:01:16 2011 +0200

    Disabled updating user list from LDAP every 20 sec

-----------------------------------------------------------------------

Summary of changes:
 Makefile                     |  101 ---------------------
 debian/changelog             |    5 +
 onmainwindow.cpp             |   54 ++++++++----
 onmainwindow.h               |   12 +++-
 onmainwindow_part2.cpp       |   87 +++++++++++++++++-
 onmainwindow_part3.cpp       |   39 +++++----
 sshmasterconnection.cpp      |    2 +-
 sshmasterconnection.h        |    3 +-
 x2goclient-3.01-libssh.kdev4 |    3 -
 x2goclient.kdevelop          |  204 ------------------------------------------
 x2goclient.kdevelop.pcs      |  Bin 442256 -> 0 bytes
 x2goclient.kdevses           |   34 -------
 12 files changed, 161 insertions(+), 383 deletions(-)
 delete mode 100755 Makefile
 delete mode 100644 x2goclient-3.01-libssh.kdev4
 delete mode 100644 x2goclient.kdevelop
 delete mode 100644 x2goclient.kdevelop.pcs
 delete mode 100644 x2goclient.kdevses

The diff of changes is:
diff --git a/Makefile b/Makefile
deleted file mode 100755
index cf1f9cc..0000000
--- a/Makefile
+++ /dev/null
@@ -1,101 +0,0 @@
-#!/usr/bin/make -f
-
-SRC_DIR=$(CURDIR)
-CLIENT_DIR=$(SRC_DIR)/client_build
-CLIENT_BINARY=$(CLIENT_DIR)/x2goclient
-
-PLUGIN_DIR=$(SRC_DIR)/plugin_build
-PLUGIN_BINARY=$(PLUGIN_DIR)/libx2goplugin.so
-
-SHELL=/bin/bash
-
-INSTALL_DIR=install -d -o root -g root -m 755
-INSTALL_FILE=install -o root -g root -m 644
-INSTALL_PROGRAM=install -o root -g root -m 755
-
-RM_FILE=rm -f
-RM_DIR=rmdir -p --ignore-fail-on-non-empty
-
-DESTDIR=
-PREFIX=/usr/local
-BINDIR=$(PREFIX)/bin
-SHAREDIR=$(PREFIX)/share
-MANDIR=$(SHAREDIR)/man
-MOZPLUGDIR=$(PREFIX)/lib/mozilla/plugins
-
-all: build
-
-build: build_client build_plugin
-
-build_client:
-	mkdir -p $(CLIENT_DIR) && cd $(CLIENT_DIR) && qmake-qt4 ../x2goclient.pro
-	cd $(CLIENT_DIR) && $(MAKE)
-
-build_plugin:
-	mkdir -p $(PLUGIN_DIR) && cd $(PLUGIN_DIR) && X2GO_CLIENT_TARGET=plugin qmake-qt4 ../x2goclient.pro
-	cd $(PLUGIN_DIR) && $(MAKE)
-
-clean: clean_client clean_plugin
-
-clean_client:
-	rm -fr $(CLIENT_DIR)
-
-clean_plugin:
-	rm -fr $(PLUGIN_DIR)
-
-install: install_client install_plugin install_man
-
-install_client:
-	$(INSTALL_DIR) $(DESTDIR)$(BINDIR)/
-	$(INSTALL_DIR) $(DESTDIR)$(SHAREDIR)/applications
-	$(INSTALL_DIR) $(DESTDIR)$(SHAREDIR)/x2goclient/icons
-	$(INSTALL_DIR) $(DESTDIR)$(SHAREDIR)/icons/hicolor/128x128/apps
-	$(INSTALL_DIR) $(DESTDIR)$(SHAREDIR)/icons/hicolor/16x16/apps
-	$(INSTALL_DIR) $(DESTDIR)$(SHAREDIR)/icons/hicolor/64x64/apps
-	$(INSTALL_DIR) $(DESTDIR)$(SHAREDIR)/icons/hicolor/32x32/apps
-	$(INSTALL_PROGRAM) $(CLIENT_DIR)/x2goclient $(DESTDIR)$(BINDIR)/x2goclient
-	$(INSTALL_FILE) desktop/x2goclient.desktop    $(DESTDIR)$(SHAREDIR)/applications/x2goclient.desktop
-	$(INSTALL_FILE) icons/x2goclient.xpm          $(DESTDIR)$(SHAREDIR)/x2goclient/icons/x2goclient.xpm
-	$(INSTALL_FILE) icons/128x128/x2goclient.png  $(DESTDIR)$(SHAREDIR)/x2goclient/icons/x2goclient.png
-	$(INSTALL_FILE) icons/128x128/x2gosession.png $(DESTDIR)$(SHAREDIR)/x2goclient/icons/x2gosession.png
-	$(INSTALL_FILE) icons/128x128/x2goclient.png  $(DESTDIR)$(SHAREDIR)/icons/hicolor/128x128/apps/x2goclient.png
-	$(INSTALL_FILE) icons/16x16/x2goclient.png    $(DESTDIR)$(SHAREDIR)/icons/hicolor/16x16/apps/x2goclient.png
-	$(INSTALL_FILE) icons/64x64/x2goclient.png    $(DESTDIR)$(SHAREDIR)/icons/hicolor/64x64/apps/x2goclient.png
-	$(INSTALL_FILE) icons/32x32/x2goclient.png    $(DESTDIR)$(SHAREDIR)/icons/hicolor/32x32/apps/x2goclient.png
-
-install_plugin:
-	$(INSTALL_DIR) $(DESTDIR)$(MOZPLUGDIR)/
-	$(INSTALL_PROGRAM) $(PLUGIN_DIR)/libx2goplugin.so $(DESTDIR)$(MOZPLUGDIR)/libx2goplugin.so
-
-install_man:
-	$(INSTALL_DIR) $(DESTDIR)$(MANDIR)/
-	$(INSTALL_DIR) $(DESTDIR)$(MANDIR)/man1
-	$(INSTALL_FILE) man/man1/x2goclient.1    $(DESTDIR)$(MANDIR)/man1/x2goclient.1
-	gzip -f $(DESTDIR)$(MANDIR)/man1/x2goclient.1
-
-uninstall: uninstall_client uninstall_plugin uninstall_man
-
-uninstall_client:
-	$(RM_FILE) $(BINDIR)/x2goclient
-	$(RM_FILE) $(SHAREDIR)/applications/x2goclient.desktop
-	$(RM_FILE) $(SHAREDIR)/x2goclient/icons/x2goclient.png
-	$(RM_FILE) $(SHAREDIR)/x2goclient/icons/x2goclient.xpm
-	$(RM_FILE) $(SHAREDIR)/x2goclient/icons/x2gosession.png
-	$(RM_FILE) $(SHAREDIR)/icons/hicolor/128x128/apps/x2goclient.png
-	$(RM_FILE) $(SHAREDIR)/icons/hicolor/16x16/apps/x2goclient.png
-	$(RM_FILE) $(SHAREDIR)/icons/hicolor/64x64/apps/x2goclient.png
-	$(RM_FILE) $(SHAREDIR)/icons/hicolor/32x32/apps/x2goclient.png
-	$(RM_DIR) $(SHAREDIR)/applications
-	$(RM_DIR) $(SHAREDIR)/x2goclient/icons
-	$(RM_DIR) $(SHAREDIR)/icons/hicolor/128x128/apps
-	$(RM_DIR) $(SHAREDIR)/icons/hicolor/16x16/apps
-	$(RM_DIR) $(SHAREDIR)/icons/hicolor/64x64/apps
-	$(RM_DIR) $(SHAREDIR)/icons/hicolor/32x32/apps
-
-uninstall_plugin:
-	$(RM_FILE) $(MOZPLUGDIR)/libx2goplugin.so
-	$(RM_DIR) $(MOZPLUGDIR)/
-
-uninstall_man:
-	$(RM_FILE) $(MANDIR)/man1/x2goclient.1.gz
-	$(RM_DIR) $(MANDIR)/man1
diff --git a/debian/changelog b/debian/changelog
index ac2dd58..99c0e69 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,7 +1,12 @@
 x2goclient (3.0.99.0-0~x2go1) UNRELEASED; urgency=low
 
+  [ Mike Gabriel ]
   * nothing yet.
 
+  [ Oleksandr Shneyder ]
+  * fixed loadbalancing in LDAP mode on multiply X2Go servers
+  * fixed session crash by pulling out of smart card
+
  -- Mike Gabriel <mike.gabriel at das-netzwerkteam.de>  Thu, 14 Jul 2011 09:08:10 +0200
 
 x2goclient (3.0.1.21-0~x2go1) unstable; urgency=low
diff --git a/onmainwindow.cpp b/onmainwindow.cpp
index 033aacc..da1d947 100644
--- a/onmainwindow.cpp
+++ b/onmainwindow.cpp
@@ -785,9 +785,10 @@ void ONMainWindow::initWidgetsNormal()
 	QTimer::singleShot(1, this,SLOT(slotGetBrokerAuth()));
       }
     }
-    QTimer* t=new QTimer ( this );
+/*    QTimer* t=new QTimer ( this );
     connect ( t,SIGNAL ( timeout() ),this,SLOT ( slotRereadUsers() ) );
     t->start ( 20000 );
+*/
 #ifdef Q_OS_WIN
     proxyWinTimer=new QTimer ( this );
     connect ( proxyWinTimer, SIGNAL ( timeout() ), this,
@@ -1071,13 +1072,26 @@ void ONMainWindow::closeClient()
         x2goDebug<<"done";
 
     }
-    if ( sshConnection )
+    if ( sshConnection && !useLdap)
     {
         sshConnection->disconnectSession();
         x2goDebug<<"waiting sshConnection to finish\n";
         sshConnection->wait ( 10000 );
         x2goDebug<<"sshConnection is closed\n";
     }
+    if(useLdap)
+    {
+      for(int i=0;i<serverSshConnections.count();++i)
+      {
+	if(serverSshConnections[i])
+	{
+	  serverSshConnections[i]->disconnectSession();
+          x2goDebug<<"waiting sshConnection to finish\n";
+          serverSshConnections[i]->wait ( 10000 );
+          x2goDebug<<"sshConnection is closed\n";
+	}
+      }
+    }
 
     /*	if ( tunnel!=0l )
     	{
@@ -1541,7 +1555,9 @@ void ONMainWindow::slotPassEnter()
 // 	QString host=ldapServer;
     QString host=firstServer;
     passwd=getCurrentPass();
-    startSshConnection ( host,sshPort,acceptRsa,user,passwd,true );
+    if(sshConnection)
+      sshConnection->disconnectSession();
+    sshConnection=startSshConnection ( host,sshPort,acceptRsa,user,passwd,true );
 
 #endif
 }
@@ -2496,12 +2512,13 @@ void ONMainWindow::slotSelectedFromList ( SessionButton* session )
 }
 
 
-void ONMainWindow::startSshConnection ( QString host, QString port, bool acceptUnknownHosts, QString login,
-                                        QString password, bool autologin )
+SshMasterConnection* ONMainWindow::startSshConnection ( QString host, QString port, bool acceptUnknownHosts, 
+					QString login,
+                                        QString password, bool autologin, bool getSrv)
 {
+    
+    SshMasterConnection* con;
     x2goDebug<<"start new ssh connection"<<endl;
-
-
     for ( int i=0;i<sshEnv.size();++i )
     {
 #ifndef Q_OS_WIN
@@ -2518,21 +2535,24 @@ void ONMainWindow::startSshConnection ( QString host, QString port, bool acceptU
         autologin=true;
     if ( cardReady )
         cardStarted=true;
-    if ( sshConnection )
-    {
-        sshConnection->disconnectSession();
-    }
+
 
     /////key/sshagent/env/
 
     passForm->setEnabled ( false );
-    sshConnection=new SshMasterConnection ( host, port.toInt(),acceptUnknownHosts,
+    con=new SshMasterConnection ( host, port.toInt(),acceptUnknownHosts,
                                             login, password,currentKey, autologin, this );
-    connect ( sshConnection,SIGNAL ( connectionOk() ), this, SLOT ( slotSshConnectionOk() ) );
-    connect ( sshConnection, SIGNAL ( serverAuthError ( int,QString ) ),this,SLOT ( slotSshServerAuthError ( int,QString ) ) );
-    connect ( sshConnection, SIGNAL ( userAuthError ( QString ) ),this,SLOT ( slotSshUserAuthError ( QString ) ) );
-    connect ( sshConnection, SIGNAL ( connectionError ( QString,QString ) ), this, SLOT ( slotSshConnectionError ( QString,QString ) ) );
-    sshConnection->start();
+    if(!getSrv)
+         connect ( con, SIGNAL ( connectionOk(QString) ), this, SLOT ( slotSshConnectionOk() ) );
+    else
+         connect ( con, SIGNAL ( connectionOk(QString)), this, SLOT ( slotServSshConnectionOk(QString) ) );
+    
+    connect ( con, SIGNAL ( serverAuthError ( int,QString ) ),this,SLOT ( slotSshServerAuthError ( int,QString ) ) );
+    connect ( con, SIGNAL ( userAuthError ( QString ) ),this,SLOT ( slotSshUserAuthError ( QString ) ) );
+    connect ( con, SIGNAL ( connectionError ( QString,QString ) ), this, 
+	      SLOT ( slotSshConnectionError ( QString,QString ) ) );
+    con->start();
+    return con;
 }
 
 void ONMainWindow::slotSshConnectionError ( QString message, QString lastSessionError )
diff --git a/onmainwindow.h b/onmainwindow.h
index 0f7d892..e518358 100644
--- a/onmainwindow.h
+++ b/onmainwindow.h
@@ -192,6 +192,8 @@ struct SshProxy
     QString port;
     QString bin;
 };
+
+
 //wrapper to send mouse events under windows in embedded mode
 #ifdef Q_OS_WIN
 class WWrapper : public QPushButton
@@ -413,6 +415,9 @@ public:
     {
       return !noSessionEdit;
     }
+    
+    
+    SshMasterConnection* findServerSshConnection(QString host);
 
     void showHelp();
     void showHelpPack();
@@ -486,6 +491,7 @@ private:
     QString defaultSshPort;
     QVBoxLayout* selectSesDlgLayout;
     SshMasterConnection* sshConnection;
+    QList<SshMasterConnection*> serverSshConnections;
     bool closeEventSent;
     int shadowMode;
     QString shadowUser;
@@ -617,6 +623,7 @@ private:
     bool ldapOnly;
     bool isScDaemonOk;
     bool parecTunnelOk;
+    
 
     bool startSessSound;
     int startSessSndSystem;
@@ -771,7 +778,9 @@ private:
     void closeClient();
     void continueNormalSession();
     void continueLDAPSession();
-    void startSshConnection ( QString host, QString port, bool acceptUnknownHosts, QString login, QString password, bool autologin );
+    SshMasterConnection* startSshConnection ( QString host, QString port, 
+					      bool acceptUnknownHosts, QString login, 
+					      QString password, bool autologin, bool getSrv=false);
 
 protected:
     virtual void closeEvent ( QCloseEvent* event );
@@ -808,6 +817,7 @@ private slots:
     void slotSshServerAuthError ( int error, QString sshMessage );
     void slotSshUserAuthError ( QString error );
     void slotSshConnectionOk();
+    void slotServSshConnectionOk(QString server);
     void slotChangeKbdLayout(const QString& layout);
 
 public slots:
diff --git a/onmainwindow_part2.cpp b/onmainwindow_part2.cpp
index 2826f87..702c447 100644
--- a/onmainwindow_part2.cpp
+++ b/onmainwindow_part2.cpp
@@ -25,11 +25,43 @@ void ONMainWindow::slotSshConnectionOk()
     x2goDebug<<"ssh connection ok"<<endl;
     passForm->setEnabled ( true );
     if ( useLdap )
-        continueLDAPSession();
+    {
+	continueLDAPSession();
+    }
     else
         continueNormalSession();
 }
 
+
+SshMasterConnection*  ONMainWindow::findServerSshConnection(QString host)
+{
+  for(int i=0;i<serverSshConnections.count();++i)
+  {
+    if(serverSshConnections[i])
+    {
+      if(serverSshConnections[i]->getHost()==host)
+	return serverSshConnections[i];
+    }
+  }
+  return 0l;
+}
+
+void ONMainWindow::slotServSshConnectionOk(QString server)
+{
+        SshMasterConnection* con=findServerSshConnection(server);
+	if(!con)
+	  return;
+        SshProcess* lproc;
+        lproc=new SshProcess ( con,  this );
+        connect ( lproc,SIGNAL ( sshFinished ( bool,
+                                               QString,SshProcess* ) ),
+                  this,SLOT (
+                      slotListAllSessions ( bool,
+                                            QString,SshProcess* ) ) );
+	x2goDebug<<"getting sessions on "<<server<<endl;
+        lproc->startNormal ( "export HOSTNAME && x2golistsessions" );
+}
+
 void ONMainWindow::slotSshServerAuthError ( int error, QString sshMessage )
 {
     if ( startHidden )
@@ -239,8 +271,9 @@ bool ONMainWindow::startSession ( const QString& sid )
       sshPort=st.setting()->value ( sid+"/sshport",
                                    ( QVariant ) "22" ).toString();
     }
-    startSshConnection ( host,sshPort,acceptRsa,user,passwd,autologin );
-
+    if(sshConnection)
+      sshConnection->disconnectSession();
+    sshConnection=startSshConnection ( host,sshPort,acceptRsa,user,passwd,autologin );
     return true;
 }
 
@@ -443,6 +476,15 @@ void ONMainWindow::startNewSession()
                                     QMessageBox::NoButton );
             return;
         }
+        sshConnection=findServerSshConnection(host);
+	if(!sshConnection)
+        {
+            QMessageBox::critical ( 0l,tr ( "Error" ),
+                                    tr ( "Server not availabel" ),
+                                    QMessageBox::Ok,
+                                    QMessageBox::NoButton );
+            return;
+        }	
     }
     else
     {
@@ -733,7 +775,15 @@ void ONMainWindow::resumeSession ( const x2goSession& s )
         usekbd=defaultSetKbd;
         layout=defaultLayout[0];
         type=defaultKbdType;
-
+        sshConnection=findServerSshConnection(host);
+	if(!sshConnection)
+        {
+            QMessageBox::critical ( 0l,tr ( "Error" ),
+                                    tr ( "Server not availabel" ),
+                                    QMessageBox::Ok,
+                                    QMessageBox::NoButton );
+            return;
+        }
     }
     else
     {
@@ -1174,6 +1224,20 @@ void ONMainWindow::slotSuspendSess()
             host=config.server;
         }
     }
+    else
+    {
+      sshConnection=findServerSshConnection(host);
+      if(!sshConnection)
+      {
+            QMessageBox::critical ( 0l,tr ( "Error" ),
+                                    tr ( "Server not availabel" ),
+                                    QMessageBox::Ok,
+                                    QMessageBox::NoButton );
+            return;
+      }
+    }
+
+     
     suspendSession ( sessId );
 }
 
@@ -1269,6 +1333,21 @@ void ONMainWindow::slotTermSess()
             QString sid=lastSession->id();
         }
     }
+    else
+    {
+      QString host=sessTv->model()->index ( sessTv->currentIndex().row(),
+                                            S_SERVER ).data().toString();
+					    
+      sshConnection=findServerSshConnection(host);
+      if(!sshConnection)
+      {
+            QMessageBox::critical ( 0l,tr ( "Error" ),
+                                    tr ( "Server not availabel" ),
+                                    QMessageBox::Ok,
+                                    QMessageBox::NoButton );
+            return;
+      }
+    }
 
     termSession ( sessId );
 }
diff --git a/onmainwindow_part3.cpp b/onmainwindow_part3.cpp
index a2d10b8..1bc6564 100644
--- a/onmainwindow_part3.cpp
+++ b/onmainwindow_part3.cpp
@@ -805,22 +805,21 @@ void ONMainWindow::slotGetServers ( bool result, QString output,
 
     listedSessions.clear();
     retSessions=0;
-// TODO: should use x2golistsessions --all-servers to create less ssh sessions
+    if(sshConnection)
+      sshConnection->disconnectSession();
+    QString passwd;
+    QString user=getCurrentUname();
+    passwd=getCurrentPass();
+    for(int i=0; i< serverSshConnections.count();++i)
+    {
+      if(serverSshConnections[i])
+	serverSshConnections[i]->disconnectSession();
+    }
+    serverSshConnections.clear();
     for ( int j=0;j<x2goServers.size();++j )
     {
-        QString passwd;
-        QString user=getCurrentUname();
         QString host=x2goServers[j].name;
-        passwd=getCurrentPass();
-
-        SshProcess* lproc;
-        lproc=new SshProcess ( sshConnection,  this );
-        connect ( lproc,SIGNAL ( sshFinished ( bool,
-                                               QString,SshProcess* ) ),
-                  this,SLOT (
-                      slotListAllSessions ( bool,
-                                            QString,SshProcess* ) ) );
-        lproc->startNormal ( "export HOSTNAME && x2golistsessions" );
+	serverSshConnections<<startSshConnection ( host,sshPort,acceptRsa,user,passwd,true,true);
     }
 }
 
@@ -829,12 +828,14 @@ void ONMainWindow::slotListAllSessions ( bool result,QString output,
         SshProcess* proc )
 {
     bool last=false;
+
     ++retSessions;
     if ( retSessions == x2goServers.size() )
         last=true;
     if ( proc )
         delete proc;
     proc=0;
+    
     if ( result==false )
     {
         QString message=tr ( "<b>Connection failed</b>\n" ) +output;
@@ -867,15 +868,15 @@ void ONMainWindow::slotListAllSessions ( bool result,QString output,
                 ( listedSessions.size() ==1 &&
                   listedSessions[0].length() <5 ) )
         {
-// 			x2goDebug<<"start New Session";
+// 	x2goDebug<<"start New Session";
             startNewSession();
         }
         else if ( listedSessions.size() ==1 )
         {
-// 			x2goDebug<<"have one session";
+// 	x2goDebug<<"have one session";
             x2goSession s=getSessionFromString (
                               listedSessions[0] );
-// 			x2goDebug<<"will procceed one session";
+// 		x2goDebug<<"will procceed one session";
             QDesktopWidget wd;
             if ( s.status=="S" && isColorDepthOk (
                         wd.depth(),s.colorDepth ) )
@@ -1999,7 +2000,11 @@ void ONMainWindow::slotCheckAgentProcess()
         cardStarted=false;
         if ( nxproxy )
             if ( nxproxy->state() ==QProcess::Running )
-                nxproxy->terminate();
+	    {
+	          x2goDebug<<"Suspending session\n";
+	          slotSuspendSessFromSt();
+//                 nxproxy->terminate();
+	    }
     }
 
     x2goDebug<<"gpg-agent finished\n";
diff --git a/sshmasterconnection.cpp b/sshmasterconnection.cpp
index 224b7bf..1f89963 100644
--- a/sshmasterconnection.cpp
+++ b/sshmasterconnection.cpp
@@ -163,7 +163,7 @@ void SshMasterConnection::run()
       #ifdef DEBUG
         x2goDebug<<"user auth OK\n";
       #endif
-        emit connectionOk();
+        emit connectionOk(host);
     }
     else
     {
diff --git a/sshmasterconnection.h b/sshmasterconnection.h
index 15d9235..0de9a22 100644
--- a/sshmasterconnection.h
+++ b/sshmasterconnection.h
@@ -69,6 +69,7 @@ public:
       acceptUnknownServers=accept;
     }
     SshMasterConnection* reverseTunnelConnection(SshProcess* creator, int remotePort, QString localHost, int localPort);
+    QString getHost(){return host;}
 
 private:
     SshMasterConnection(QString host, int port, bool acceptUnknownServers, QString user, QString pass, QString key,
@@ -124,7 +125,7 @@ signals:
 
     void newReverceTunnelConnection(SshProcess* creator, void* newChannel);
     void reverseListenOk(SshProcess* creator);
-    void connectionOk();
+    void connectionOk( QString host);
 };
 
 
diff --git a/x2goclient-3.01-libssh.kdev4 b/x2goclient-3.01-libssh.kdev4
deleted file mode 100644
index 07849c9..0000000
--- a/x2goclient-3.01-libssh.kdev4
+++ /dev/null
@@ -1,3 +0,0 @@
-[Project]
-Manager=KDevCustomMakeManager
-Name=x2goclient-3.01-libssh
diff --git a/x2goclient.kdevelop b/x2goclient.kdevelop
deleted file mode 100644
index f210a0c..0000000
--- a/x2goclient.kdevelop
+++ /dev/null
@@ -1,204 +0,0 @@
-<?xml version = '1.0'?>
-<kdevelop>
-  <general>
-    <author>Oleksandr Shneyder</author>
-    <email>oleksandr.shneyder at obviously-nice.de</email>
-    <version>$VERSION$</version>
-    <projectmanagement>KDevTrollProject</projectmanagement>
-    <primarylanguage>C++</primarylanguage>
-    <keywords>
-      <keyword>Qt</keyword>
-    </keywords>
-    <projectdirectory>.</projectdirectory>
-    <absoluteprojectpath>false</absoluteprojectpath>
-    <description/>
-    <ignoreparts/>
-    <versioncontrol/>
-    <projectname>x2goclient</projectname>
-    <defaultencoding/>
-  </general>
-  <kdevfileview>
-    <groups>
-      <group pattern="*.cpp;*.cxx;*.h" name="Sources" />
-      <group pattern="*.ui" name="User Interface" />
-      <group pattern="*.png" name="Icons" />
-      <group pattern="*" name="Others" />
-      <hidenonprojectfiles>false</hidenonprojectfiles>
-      <hidenonlocation>false</hidenonlocation>
-    </groups>
-    <tree>
-      <hidepatterns>*.o,*.lo,CVS</hidepatterns>
-      <hidenonprojectfiles>false</hidenonprojectfiles>
-    </tree>
-  </kdevfileview>
-  <kdevdoctreeview>
-    <ignoretocs>
-      <toc>bash</toc>
-      <toc>bash_bugs</toc>
-      <toc>clanlib</toc>
-      <toc>w3c-dom-level2-html</toc>
-      <toc>fortran_bugs_gcc</toc>
-      <toc>gnome1</toc>
-      <toc>gnustep</toc>
-      <toc>gtk</toc>
-      <toc>gtk_bugs</toc>
-      <toc>haskell</toc>
-      <toc>haskell_bugs_ghc</toc>
-      <toc>java_bugs_gcc</toc>
-      <toc>java_bugs_sun</toc>
-      <toc>kde2book</toc>
-      <toc>opengl</toc>
-      <toc>pascal_bugs_fp</toc>
-      <toc>php</toc>
-      <toc>php_bugs</toc>
-      <toc>perl</toc>
-      <toc>perl_bugs</toc>
-      <toc>python</toc>
-      <toc>python_bugs</toc>
-      <toc>qt-kdev3</toc>
-      <toc>ruby</toc>
-      <toc>ruby_bugs</toc>
-      <toc>sdl</toc>
-      <toc>stl</toc>
-      <toc>w3c-svg</toc>
-      <toc>sw</toc>
-      <toc>w3c-uaag10</toc>
-      <toc>wxwidgets_bugs</toc>
-    </ignoretocs>
-    <ignoredoxygen>
-      <toc>KDE Libraries (Doxygen)</toc>
-    </ignoredoxygen>
-  </kdevdoctreeview>
-  <kdevdebugger>
-    <general>
-      <dbgshell/>
-      <programargs/>
-      <gdbpath/>
-      <configGdbScript/>
-      <runShellScript/>
-      <runGdbScript/>
-      <breakonloadinglibs>true</breakonloadinglibs>
-      <separatetty>false</separatetty>
-      <floatingtoolbar>false</floatingtoolbar>
-      <raiseGDBOnStart>false</raiseGDBOnStart>
-    </general>
-    <display>
-      <staticmembers>false</staticmembers>
-      <demanglenames>true</demanglenames>
-      <outputradix>10</outputradix>
-    </display>
-  </kdevdebugger>
-  <kdevfilecreate>
-    <filetypes/>
-    <useglobaltypes>
-      <type ext="ui" />
-      <type ext="cpp" />
-      <type ext="h" />
-    </useglobaltypes>
-  </kdevfilecreate>
-  <kdevtrollproject>
-    <general>
-      <activedir></activedir>
-    </general>
-    <run>
-      <directoryradio>executable</directoryradio>
-      <customdirectory>/</customdirectory>
-      <mainprogram>/usr/src.cur/db-builds/x2goclient/x2goclient-3.01/x2goclient</mainprogram>
-      <programargs/>
-      <terminal>false</terminal>
-      <autocompile>true</autocompile>
-      <envvars/>
-      <globaldebugarguments/>
-      <globalcwd>/usr/src.cur/db-builds/x2goclient/x2goclient-3.01</globalcwd>
-      <useglobalprogram>true</useglobalprogram>
-      <autoinstall>false</autoinstall>
-      <autokdesu>false</autokdesu>
-    </run>
-    <make>
-      <abortonerror>true</abortonerror>
-      <runmultiplejobs>true</runmultiplejobs>
-      <numberofjobs>3</numberofjobs>
-      <dontact>false</dontact>
-      <makebin/>
-      <prio>0</prio>
-      <envvars/>
-    </make>
-    <qmake>
-      <savebehaviour>2</savebehaviour>
-      <replacePaths>false</replacePaths>
-      <disableDefaultOpts>true</disableDefaultOpts>
-      <enableFilenamesOnly>false</enableFilenamesOnly>
-      <showVariablesInTree>true</showVariablesInTree>
-      <showParseErrors>true</showParseErrors>
-    </qmake>
-    <subclassing/>
-  </kdevtrollproject>
-  <kdevcppsupport>
-    <references/>
-    <codecompletion>
-      <includeGlobalFunctions>true</includeGlobalFunctions>
-      <includeTypes>true</includeTypes>
-      <includeEnums>true</includeEnums>
-      <includeTypedefs>false</includeTypedefs>
-      <automaticCodeCompletion>true</automaticCodeCompletion>
-      <automaticArgumentsHint>true</automaticArgumentsHint>
-      <automaticHeaderCompletion>true</automaticHeaderCompletion>
-      <codeCompletionDelay>250</codeCompletionDelay>
-      <argumentsHintDelay>400</argumentsHintDelay>
-      <headerCompletionDelay>250</headerCompletionDelay>
-      <showOnlyAccessibleItems>false</showOnlyAccessibleItems>
-      <completionBoxItemOrder>0</completionBoxItemOrder>
-      <howEvaluationContextMenu>true</howEvaluationContextMenu>
-      <showCommentWithArgumentHint>true</showCommentWithArgumentHint>
-      <statusBarTypeEvaluation>false</statusBarTypeEvaluation>
-      <namespaceAliases>std=_GLIBCXX_STD;__gnu_cxx=std</namespaceAliases>
-      <processPrimaryTypes>true</processPrimaryTypes>
-      <processFunctionArguments>false</processFunctionArguments>
-      <preProcessAllHeaders>false</preProcessAllHeaders>
-      <parseMissingHeaders>false</parseMissingHeaders>
-      <resolveIncludePaths>true</resolveIncludePaths>
-      <alwaysParseInBackground>true</alwaysParseInBackground>
-      <usePermanentCaching>true</usePermanentCaching>
-      <alwaysIncludeNamespaces>false</alwaysIncludeNamespaces>
-      <includePaths>.;</includePaths>
-      <parseMissingHeadersExperimental>false</parseMissingHeadersExperimental>
-      <resolveIncludePathsUsingMakeExperimental>false</resolveIncludePathsUsingMakeExperimental>
-    </codecompletion>
-    <qt>
-      <used>false</used>
-      <version>3</version>
-      <root>/usr/share/qt3</root>
-      <includestyle>3</includestyle>
-      <designerintegration>EmbeddedKDevDesigner</designerintegration>
-      <qmake>/usr/bin/qmake-qt3</qmake>
-      <designer>/usr/bin/designer</designer>
-      <designerpluginpaths/>
-    </qt>
-    <creategettersetter>
-      <prefixGet/>
-      <prefixSet>set</prefixSet>
-      <prefixVariable>m_,_</prefixVariable>
-      <parameterName>theValue</parameterName>
-      <inlineGet>true</inlineGet>
-      <inlineSet>true</inlineSet>
-    </creategettersetter>
-    <splitheadersource>
-      <enabled>false</enabled>
-      <synchronize>true</synchronize>
-      <orientation>Vertical</orientation>
-    </splitheadersource>
-  </kdevcppsupport>
-  <cppsupportpart>
-    <filetemplates>
-      <interfacesuffix>.h</interfacesuffix>
-      <implementationsuffix>.cpp</implementationsuffix>
-    </filetemplates>
-  </cppsupportpart>
-  <kdevdocumentation>
-    <projectdoc>
-      <docsystem/>
-      <docurl/>
-      <usermanualurl/>
-    </projectdoc>
-  </kdevdocumentation>
-</kdevelop>
diff --git a/x2goclient.kdevelop.pcs b/x2goclient.kdevelop.pcs
deleted file mode 100644
index 1621e1a..0000000
Binary files a/x2goclient.kdevelop.pcs and /dev/null differ
diff --git a/x2goclient.kdevses b/x2goclient.kdevses
deleted file mode 100644
index 568af31..0000000
--- a/x2goclient.kdevses
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version = '1.0' encoding = 'UTF-8'?>
-<!DOCTYPE KDevPrjSession>
-<KDevPrjSession>
- <DocsAndViews NumberOfDocuments="3" >
-  <Doc0 NumberOfViews="1" URL="file:///usr/src.cur/db-builds/x2goclient/x2goclient-3.01/sshmasterconnection.cpp" >
-   <View0 Encoding="" Type="Source" />
-  </Doc0>
-  <Doc1 NumberOfViews="1" URL="file:///usr/src.cur/db-builds/x2goclient/x2goclient-3.01/onmainwindow.cpp" >
-   <View0 Encoding="UTF-8" line="447" Type="Source" />
-  </Doc1>
-  <Doc2 NumberOfViews="1" URL="file:///usr/share/doc/qt4-doc/html/qx11embedcontainer.html#embedClient" >
-   <View0 Type="Documentation" />
-  </Doc2>
- </DocsAndViews>
- <pluginList>
-  <kdevdebugger>
-   <breakpointList/>
-   <showInternalCommands value="0" />
-  </kdevdebugger>
-  <kdevastyle>
-   <Extensions ext="*.cpp *.h,*.c *.h,*.cxx *.hxx,*.c++ *.h++,*.cc *.hh,*.C *.H,*.diff,*.inl,*.java,*.moc,*.patch,*.tlh,*.xpm" />
-   <AStyle IndentPreprocessors="0" FillCount="4" PadParenthesesOut="1" IndentNamespaces="1" IndentLabels="1" Fill="Tabs" MaxStatement="40" Brackets="Break" MinConditional="-1" IndentBrackets="0" PadParenthesesUn="1" BlockBreak="0" KeepStatements="1" KeepBlocks="1" BlockIfElse="0" IndentSwitches="1" PadOperators="0" FStyle="UserDefined" IndentCases="0" FillEmptyLines="0" BracketsCloseHeaders="0" BlockBreakAll="0" PadParenthesesIn="1" IndentClasses="1" IndentBlocks="0" FillForce="0" />
-  </kdevastyle>
-  <kdevbookmarks>
-   <bookmarks/>
-  </kdevbookmarks>
-  <kdevvalgrind>
-   <executable path="" params="" />
-   <valgrind path="" params="" />
-   <calltree path="" params="" />
-   <kcachegrind path="" />
-  </kdevvalgrind>
- </pluginList>
-</KDevPrjSession>


hooks/post-receive
-- 
x2goclient.git (X2go Client)

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "x2goclient.git" (X2go Client).




More information about the x2go-commits mailing list