| Index: remoting/tools/me2me_virtual_host.py
|
| diff --git a/remoting/tools/me2me_virtual_host.py b/remoting/tools/me2me_virtual_host.py
|
| index 19987b2576b477f97a97436d7695815e191fd49b..7a9567233d44245802e3b5921230297a557040cc 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)
|
|
|