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

Unified Diff: tools/telemetry/telemetry/core/chrome/android_browser_backend.py

Issue 22286010: [telemetry] Implement Forwarder using RNDIS. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Exclude dev_iface when looking for address conflicts Created 7 years, 4 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: tools/telemetry/telemetry/core/chrome/android_browser_backend.py
diff --git a/tools/telemetry/telemetry/core/chrome/android_browser_backend.py b/tools/telemetry/telemetry/core/chrome/android_browser_backend.py
index 34aa933ee18e62871f1261e8fb2cf83e037c7059..1aa7f5b90ca4bf7e523b63e0f8a7b02418fe56b5 100644
--- a/tools/telemetry/telemetry/core/chrome/android_browser_backend.py
+++ b/tools/telemetry/telemetry/core/chrome/android_browser_backend.py
@@ -171,6 +171,8 @@ class AndroidBrowserBackend(chrome_browser_backend.ChromeBrowserBackend):
if options.profile_dir:
self._backend_settings.PushProfile(options.profile_dir)
+ self._root_enabled = self._adb.IsRootEnabled()
+
# Set up the command line.
self._saved_cmdline = ''.join(self._adb.Adb().GetProtectedFileContents(
self._backend_settings.cmdline_file) or [])
@@ -300,5 +302,25 @@ class AndroidBrowserBackend(chrome_browser_backend.ChromeBrowserBackend):
stdout=subprocess.PIPE).communicate()[0])
return ret
+ def AddReplayServerOptions(self, options):
+ """Override. Only add --no-dns_forwarding if not using RNDIS."""
+ if not self._root_enabled:
+ options.append('--no-dns_forwarding')
+
+ def GetBrowserStartupArgsForForwarder(self):
+ """Override. Remove --host-resolver-rules when using RNDIS."""
+ args = super(AndroidBrowserBackend,
+ self).GetBrowserStartupArgsForForwarder()
+ if self._root_enabled:
+ args = [arg for arg in args
+ if not arg.startswith('--host-resolver-rules')]
+ return args
+
def CreateForwarder(self, *port_pairs):
+ if self._root_enabled:
+ forwarder = adb_commands.RndisForwarderWithRoot(self._adb, *port_pairs)
+ self.WEBPAGEREPLAY_HOST = forwarder.host_ip
+ return forwarder
+ sys.stderr.write('WARNING: Using the old forwarder. '
+ 'Execute adb root to enable RNDIS.\n')
return adb_commands.Forwarder(self._adb, *port_pairs)

Powered by Google App Engine
This is Rietveld 408576698