Index: tools/telemetry/telemetry/core/platform/android_platform_backend.py |
diff --git a/tools/telemetry/telemetry/core/platform/android_platform_backend.py b/tools/telemetry/telemetry/core/platform/android_platform_backend.py |
index 3d7132effc22eba510818411aa08329fb1a3001f..e3e178688fe6726d027e6bbe3465c6b40cec98dd 100644 |
--- a/tools/telemetry/telemetry/core/platform/android_platform_backend.py |
+++ b/tools/telemetry/telemetry/core/platform/android_platform_backend.py |
@@ -442,7 +442,12 @@ class AndroidPlatformBackend( |
'The OpenSSL module is unavailable. ' |
'Will fallback to ignoring certificate errors.') |
return |
- |
+ if not certutils.has_sni(): |
+ logging.warning( |
+ 'Web Page Replay requires SNI support (pyOpenSSL 0.13 or greater) ' |
+ 'to generate certificates from a test CA. ' |
+ 'Will fallback to ignoring certificate errors.') |
+ return |
try: |
self._wpr_ca_cert_path = os.path.join(tempfile.mkdtemp(), 'testca.pem') |
certutils.write_dummy_ca_cert(*certutils.generate_dummy_ca_cert(), |
@@ -453,12 +458,13 @@ class AndroidPlatformBackend( |
self._adb.device_serial()) |
self._device_cert_util.install_cert(overwrite_cert=True) |
self._is_test_ca_installed = True |
- except Exception: |
+ except Exception as e: |
# Fallback to ignoring certificate errors. |
self.RemoveTestCa() |
- logging.warning('Unable to install test certificate authority on device: ' |
- '%s. Will fallback to ignoring certificate errors.' |
- % self._adb.device_serial()) |
+ logging.warning( |
+ 'Unable to install test certificate authority on device: %s. ' |
+ 'Will fallback to ignoring certificate errors. Install error: %s', |
+ self._adb.device_serial(), e) |
@property |
def is_test_ca_installed(self): |