summaryrefslogtreecommitdiffstats
path: root/remoting
diff options
context:
space:
mode:
authorlambroslambrou@google.com <lambroslambrou@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2011-12-12 20:04:16 +0000
committerlambroslambrou@google.com <lambroslambrou@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2011-12-12 20:04:16 +0000
commit9f1296082dfd7e3fc757755e6c96721499466795 (patch)
treea665171b35c1d66e6a24f7427bf235875f91a47c /remoting
parent9b6e452c3cefd6ae2c3cb199add3c43b20bae214 (diff)
downloadchromium_src-9f1296082dfd7e3fc757755e6c96721499466795.zip
chromium_src-9f1296082dfd7e3fc757755e6c96721499466795.tar.gz
chromium_src-9f1296082dfd7e3fc757755e6c96721499466795.tar.bz2
Store the host config in a per-host config file.
BUG=106795 TEST=Virtual Me2Me still works Review URL: http://codereview.chromium.org/8863010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@114066 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'remoting')
-rwxr-xr-xremoting/tools/me2me_virtual_host.py18
1 files changed, 12 insertions, 6 deletions
diff --git a/remoting/tools/me2me_virtual_host.py b/remoting/tools/me2me_virtual_host.py
index 19987b2..7a95672 100755
--- a/remoting/tools/me2me_virtual_host.py
+++ b/remoting/tools/me2me_virtual_host.py
@@ -11,6 +11,7 @@
import atexit
import getpass
+import hashlib
import json
import logging
import os
@@ -29,6 +30,9 @@ import keygen
REMOTING_COMMAND = "remoting_me2me_host"
+# Command-line switch for passing the config path to remoting_me2me_host.
+HOST_CONFIG_SWITCH_NAME = "host-config"
+
SCRIPT_PATH = os.path.dirname(sys.argv[0])
if not SCRIPT_PATH:
SCRIPT_PATH = os.getcwd()
@@ -260,10 +264,11 @@ class Desktop:
if not session_proc.pid:
raise Exception("Could not start X session")
- def launch_host(self):
+ def launch_host(self, host):
# Start remoting host
- command = locate_executable(REMOTING_COMMAND)
- self.host_proc = subprocess.Popen(command, env=self.child_env)
+ args = [locate_executable(REMOTING_COMMAND),
+ "--%s=%s" % (HOST_CONFIG_SWITCH_NAME, host.config_file)]
+ self.host_proc = subprocess.Popen(args, env=self.child_env)
if not self.host_proc.pid:
raise Exception("Could not start remoting host")
@@ -287,7 +292,8 @@ def main():
return 1
auth.save_config()
- host = Host(os.path.join(CONFIG_DIR, "host.json"))
+ host_hash = hashlib.md5(socket.gethostname()).hexdigest()
+ host = Host(os.path.join(CONFIG_DIR, "host#%s.json" % host_hash))
if not host.load_config():
host.create_config(auth)
@@ -298,7 +304,7 @@ def main():
desktop = Desktop()
desktop.launch_x_server()
desktop.launch_x_session()
- desktop.launch_host()
+ desktop.launch_host(host)
while True:
pid, status = os.wait()
@@ -310,7 +316,7 @@ def main():
if pid == desktop.host_proc.pid:
logging.info("Host process terminated, relaunching")
- desktop.launch_host()
+ desktop.launch_host(host)
if __name__ == "__main__":
logging.basicConfig(level=logging.DEBUG)