| #!/usr/bin/env python |
| # Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| """Gets the chromoting host info from an input arg and then |
| tries to find the authentication info in the .chromotingAuthToken file |
| so that the host authentication arguments can be automatically set. |
| """ |
| |
| import os |
| import platform |
| import sys |
| |
| def main(): |
| auth_filepath = os.path.join(os.path.expanduser('~'), '.chromotingAuthToken') |
| script_path = os.path.dirname(__file__) |
| |
| if platform.system() == "Windows": |
| # TODO(garykac): Make this work on Windows. |
| print 'Not yet supported on Windows.' |
| return 1 |
| elif platform.system() == "Darwin": # Darwin == MacOSX |
| client_path = '../../xcodebuild/Debug/chromoting_simple_client' |
| else: |
| client_path = '../../out/Debug/chromoting_x11_client' |
| |
| client_path = os.path.join(script_path, client_path) |
| |
| # Read username and auth token from token file. |
| auth = open(auth_filepath) |
| authinfo = auth.readlines() |
| |
| username = authinfo[0].rstrip() |
| authtoken = authinfo[1].rstrip() |
| |
| # Request final 8 characters of Host JID from user. |
| # This assumes that the host is published under the same username as the |
| # client attempting to connect. |
| print 'Host JID:', username + '/chromoting', |
| hostjid_suffix = raw_input() |
| hostjid = username + '/chromoting' + hostjid_suffix.upper() |
| |
| command = [] |
| command.append(client_path) |
| command.append('--host_jid ' + hostjid) |
| command.append('--jid ' + username) |
| command.append('--token ' + authtoken) |
| |
| # Launch the client |
| os.system(' '.join(command)) |
| return 0 |
| |
| |
| if __name__ == '__main__': |
| sys.exit(main()) |