[X2Go-Commits] [x2gobroker] 03/04: Disabled broker agent calls and load-balancing for session profiles that will request shadowing sessions.

git-admin at x2go.org git-admin at x2go.org
Thu Mar 19 02:31:03 CET 2015


This is an automated email from the git hooks/post-receive script.

x2go pushed a commit to branch master
in repository x2gobroker.

commit e96c88abd29df78d6082b3cb6b16006a83c3938f
Author: Mike Gabriel <mike.gabriel at das-netzwerkteam.de>
Date:   Thu Mar 19 02:25:58 2015 +0100

    Disabled broker agent calls and load-balancing for session profiles that will request shadowing sessions.
---
 debian/changelog                  |    2 ++
 x2gobroker/brokers/base_broker.py |   13 +++++++++++--
 2 files changed, 13 insertions(+), 2 deletions(-)

diff --git a/debian/changelog b/debian/changelog
index 1913c1a..8beb1d0 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -224,6 +224,8 @@ x2gobroker (0.0.3.0-0x2go1) UNRELEASED; urgency=low
       (client <-> server communication).
     - Don't check for running/suspended session if the session profile will
       request a shadowing session.
+    - Disabled broker agent calls and load-balancing for session profiles that
+      will request shadowing sessions.
     - Mention "usebrokerpass" session profile option in
       x2gobroker-sessionprofiles.conf.
   * debian/control:
diff --git a/x2gobroker/brokers/base_broker.py b/x2gobroker/brokers/base_broker.py
index bddca67..793da39 100644
--- a/x2gobroker/brokers/base_broker.py
+++ b/x2gobroker/brokers/base_broker.py
@@ -995,6 +995,10 @@ class X2GoBroker(object):
         """
         remote_agent = None
 
+        # no remote agent needed for shadow sessions
+        if self.is_shadow_profile(profile_id):
+            return remote_agent
+
         agent_query_mode = self.get_agent_query_mode(profile_id).upper()
         if agent_query_mode == u'SSH' and x2gobroker.agent.has_remote_broker_agent_setup():
 
@@ -1375,8 +1379,13 @@ class X2GoBroker(object):
             # detect best X2Go server for this user if load balancing is configured
             elif len(server_list) >= 2:
 
-                # no remote broker agent or no username? Let's play roulette then...
-                server_name = random.choice(server_list)
+                if self.is_shadow_profile(profile_id):
+                    # we will ignore load-balancing for desktop sharing profiles
+                    server_list = [server_list[0]]
+                    server_name = server_list[0]
+                else:
+                    # no remote broker agent or no username? Let's play roulette then...
+                    server_name = random.choice(server_list)
 
             ###
             ### by now we should know the proper host to connect to...

--
Alioth's /srv/git/code.x2go.org/x2gobroker.git//..//_hooks_/post-receive-email on /srv/git/code.x2go.org/x2gobroker.git


More information about the x2go-commits mailing list