servo/components
bors-servo 0b0ea17dca
Auto merge of #26716 - jdm:selfsigned, r=Manishearth,asajeffrey
Add UI for bypassing SSL handshake failures

There are several parts to these changes:
1. resurrecting the network error classification code to distinguish between SSL failures and other network errors
1. adding an SSL verification callback to support verifying certs against a list that can change at runtime, rather than just at program initialization
1. exposing a privileged chrome://allowcert URI which accepts the PEM cert contents along with a secret token
1. extracting the PEM cert contents out of the network layer when a handshake failure occurs, and getting them into the HTML that is parsed when an SSL failure occurs
1. adding a button in the handshake failure page that performs an XHR to chrome://allowcert with knowledge of the secret token and the PEM cert contents, before reloading the original URL that failed

The presence of the secret token means that while the chrome://allowcert URL is currently visible to web content, they cannot make use of it to inject arbitrary certs into the verification process.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #26683
- [x] These changes do not require tests because the UI requires user activation and can't clearly be automated
2020-06-09 21:59:09 -04:00
..
allocator
atoms Add support for remaining animation and transition events 2020-05-26 20:34:58 +02:00
background_hang_monitor Use UnsafeCell instead of static mut in background_hang_monitor/sampler_linux.rs 2020-06-05 00:11:37 +02:00
bluetooth Some Cargo.toml cleanups 2020-05-13 22:09:56 -07:00
bluetooth_traits Some Cargo.toml cleanups 2020-05-13 22:09:56 -07:00
canvas Proxy all WR interactions for layout/font/script/canvas threads to the compositor 2020-06-09 13:05:16 -04:00
canvas_traits Proxy all WR interactions for layout/font/script/canvas threads to the compositor 2020-06-09 13:05:16 -04:00
compositing Remove unecessary webrender document from layout. 2020-06-09 13:05:16 -04:00
config Auto merge of #26788 - servo:energy, r=jdm 2020-06-04 19:29:46 -04:00
config_plugins More Cargo.toml cleanups 2020-05-14 22:20:18 -07:00
constellation Remove unecessary webrender document from layout. 2020-06-09 13:05:16 -04:00
debugger Update ipc-channel and crossbeam-channel. 2020-02-20 11:15:13 -05:00
deny_public_fields Upgrade to rustc 1.42.0-nightly (3291ae339 2020-01-15) 2020-01-16 08:46:41 +01:00
derive_common style: Gracefully handle errors creating shared memory UA style sheets. 2020-06-04 01:50:36 +02:00
devtools More Cargo.toml cleanups 2020-05-14 22:20:18 -07:00
devtools_traits More Cargo.toml cleanups 2020-05-14 22:20:18 -07:00
dom_struct
domobject_derive More Cargo.toml cleanups 2020-05-14 22:20:18 -07:00
embedder_traits More Cargo.toml cleanups 2020-05-14 22:20:18 -07:00
fallible More Cargo.toml cleanups 2020-05-14 22:20:18 -07:00
geometry
gfx Proxy all WR interactions for layout/font/script/canvas threads to the compositor 2020-06-09 13:05:16 -04:00
gfx_traits Proxy all WR interactions for layout/font/script/canvas threads to the compositor 2020-06-09 13:05:16 -04:00
hashglobe More Cargo.toml cleanups 2020-05-14 22:20:18 -07:00
jstraceable_derive
layout Auto merge of #26823 - jdm:single-renderapi, r=asajeffrey 2020-06-09 19:34:08 -04:00
layout_2020 Auto merge of #26823 - jdm:single-renderapi, r=asajeffrey 2020-06-09 19:34:08 -04:00
layout_thread Remove unecessary webrender document from layout. 2020-06-09 13:05:16 -04:00
layout_thread_2020 Remove unecessary webrender document from layout. 2020-06-09 13:05:16 -04:00
layout_traits Remove unecessary webrender document from layout. 2020-06-09 13:05:16 -04:00
malloc_size_of More Cargo.toml updates 2020-05-25 11:34:37 -07:00
media More Cargo.toml updates 2020-05-25 11:34:37 -07:00
metrics Remove support for energy profiling 2020-06-04 16:39:08 +02:00
msg Remove some unused dependency declarations 2020-05-29 00:04:34 +02:00
net net: Add unit test for accepting a self-signed cert. 2020-06-09 18:29:39 -04:00
net_traits net: Use a POST request for allowing certs temporarily. 2020-06-09 16:51:21 -04:00
pixels More Cargo.toml updates 2020-05-30 18:18:57 -07:00
profile Remove support for heartbeats profiling 2020-06-04 22:53:56 +02:00
profile_traits Remove support for heartbeats profiling 2020-06-04 22:53:56 +02:00
rand
range More Cargo.toml updates 2020-05-30 18:18:57 -07:00
remutex Fix rust's remutex source code link 2020-06-01 21:24:05 +09:00
script Auto merge of #26716 - jdm:selfsigned, r=Manishearth,asajeffrey 2020-06-09 21:59:09 -04:00
script_layout_interface More Cargo.toml updates 2020-05-30 18:18:57 -07:00
script_plugins Upgrade to rustc 1.44.0-nightly (42abbd887 2020-04-07) 2020-04-09 21:33:44 +02:00
script_traits script: Don't panic when IPC WebRender APIs fail during shutdown. 2020-06-09 15:52:03 -04:00
selectors style: Rustfmt recent changes. 2020-06-04 02:02:50 +02:00
servo Proxy all WR interactions for layout/font/script/canvas threads to the compositor 2020-06-09 13:05:16 -04:00
servo_arc More Cargo.toml updates 2020-05-30 18:18:57 -07:00
size_of_test
std_test_override
style Better computation of animation keyframes 2020-06-05 13:40:29 +02:00
style_derive style: Rustfmt recent changes. 2020-06-04 02:02:50 +02:00
style_traits style: Miscellaneous servo build fixes. 2020-06-04 01:50:36 +02:00
to_shmem style: Gracefully handle errors creating shared memory UA style sheets. 2020-06-04 01:50:36 +02:00
to_shmem_derive style: Gracefully handle errors creating shared memory UA style sheets. 2020-06-04 01:50:36 +02:00
url style: Miscellaneous servo build fixes. 2020-06-04 01:50:36 +02:00
webdriver_server More Cargo.toml updates 2020-05-31 08:55:28 -07:00
webgpu Update wgpu-core and wgpu-types 2020-06-04 01:19:13 +05:30
webrender_surfman Update surfman to 0.2 and remove glutin 2020-04-17 23:44:53 -05:00
webrender_traits More Cargo.toml updates 2020-05-31 08:55:28 -07:00