Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(497)

Unified Diff: remoting/tools/me2me_virtual_host.py

Issue 138753005: Add gnubby authentication to remoting host (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Change authorization socket flag name Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: remoting/tools/me2me_virtual_host.py
diff --git a/remoting/tools/me2me_virtual_host.py b/remoting/tools/me2me_virtual_host.py
index c1eaa99b7cb9a59de5b2b79660e60c7014f5e7dd..ad322d4f1b1d417e145cd45977068fc676ad0b09 100755
--- a/remoting/tools/me2me_virtual_host.py
+++ b/remoting/tools/me2me_virtual_host.py
@@ -192,6 +192,7 @@ class Desktop:
self.pulseaudio_pipe = None
self.server_supports_exact_resize = False
self.host_ready = False
+ self.ssh_auth_sockname = None
g_desktops.append(self)
@staticmethod
@@ -292,6 +293,10 @@ class Desktop:
return True
+ def _setup_gnubby(self):
+ self.ssh_auth_sockname = ("/tmp/chromoting.%s.ssh_auth_sock" %
+ os.environ["USER"])
+
def _launch_x_server(self, extra_x_args):
x_auth_file = os.path.expanduser("~/.Xauthority")
self.child_env["XAUTHORITY"] = x_auth_file
@@ -349,6 +354,10 @@ class Desktop:
chrome_profile = os.path.join(CONFIG_DIR, "chrome-profile")
self.child_env["CHROME_USER_DATA_DIR"] = chrome_profile
+ # Set SSH_AUTH_SOCK to the file name to listen on.
+ if self.ssh_auth_sockname:
+ self.child_env["SSH_AUTH_SOCK"] = self.ssh_auth_sockname
+
# Wait for X to be active.
for _test in range(5):
proc = subprocess.Popen("xdpyinfo", env=self.child_env, stdout=devnull)
@@ -421,6 +430,7 @@ class Desktop:
def launch_session(self, x_args):
self._init_child_env()
self._setup_pulseaudio()
+ self._setup_gnubby()
self._launch_x_server(x_args)
self._launch_x_session()
@@ -431,6 +441,8 @@ class Desktop:
args.append("--audio-pipe-name=%s" % self.pulseaudio_pipe)
if self.server_supports_exact_resize:
args.append("--server-supports-exact-resize")
+ if self.ssh_auth_sockname:
+ args.append("--ssh-auth-sockname=%s" % self.ssh_auth_sockname)
# Have the host process use SIGUSR1 to signal a successful start.
def sigusr1_handler(signum, frame):

Powered by Google App Engine
This is Rietveld 408576698