ladybird/Userland/Libraries/LibWeb
Sam Atkins 22e0603bf7 LibWeb: Implement integrity-metadata part of fetch algorithm
Specifically, this makes `<link>` elements with an `integrity` attribute
actually work. Previously, we would load their resource, and then drop
it on the floor without actually using it.

The Subresource Integrity code is in `LibWeb/SRI`, since SRI is the name
of the recommendation spec: https://www.w3.org/TR/SRI/

However, the Fetch spec links to the editor's draft, which varies
significantly from the recommendation, and so that is what the code is
based on and what the spec comments link to:
https://w3c.github.io/webappsec-subresource-integrity/

Fixes #18408
2023-04-21 20:44:47 +01:00
..
ARIA Everywhere: Rename equals_ignoring_case => equals_ignoring_ascii_case 2023-03-10 13:15:44 +01:00
Bindings LibWeb+Browser+Ladybird: Use JS::SafeFunction for EventLoop callbacks 2023-04-21 20:44:47 +01:00
Cookie Everywhere: Rename equals_ignoring_case => equals_ignoring_ascii_case 2023-03-10 13:15:44 +01:00
Crypto AK+Everywhere: Change AK::fill_with_random to accept a Bytes object 2023-04-03 15:53:49 +02:00
CSS LibWeb: Simplify StyleValue API now that auto isn't a length 2023-04-19 18:25:18 +02:00
DOM LibWeb: Add XMLDocument stub 2023-04-21 07:59:50 +02:00
DOMParsing LibWeb: Fix a few const-ness issues 2023-03-06 13:05:43 +00:00
Encoding LibWeb/WebIDL: Store SimpleException message as a String{,View} variant 2023-03-03 19:50:36 +00:00
Fetch LibWeb: Implement integrity-metadata part of fetch algorithm 2023-04-21 20:44:47 +01:00
FileAPI LibWeb: Fix a few const-ness issues 2023-03-06 13:05:43 +00:00
Geometry LibWeb: Remove FIXME for existing [Default] object toJSON()functions 2023-03-23 21:00:43 +00:00
HighResolutionTime LibWeb: Implement performance.mark and performance.clearMarks 2023-03-23 21:00:43 +00:00
HTML LibWeb+Browser+Ladybird: Use JS::SafeFunction for EventLoop callbacks 2023-04-21 20:44:47 +01:00
Infra LibJS: Make intrinsics getters return NonnullGCPtr 2023-04-13 14:29:42 +02:00
IntersectionObserver LibWeb: Make factory method of IntersectionObserver fallible 2023-02-22 09:55:33 +01:00
Layout LibWeb/Layout: Rename BlockContainer::paint{_box => able_with_lines}() 2023-04-20 20:43:30 +02:00
Loader AK+Everywhere: Change URL::path() to serialize_path() 2023-04-15 06:37:04 +02:00
MimeSniff Everywhere: Remove unused DeprecatedString includes 2023-04-09 22:00:54 +02:00
NavigationTiming LibWeb: Add a list of the entry names in the PerformanceTiming interface 2023-03-23 21:00:43 +00:00
Page LibWeb/DOM: Rename Node::{paint => paintable}_box() 2023-04-20 20:43:30 +02:00
Painting LibWeb: Implement HTMLVideoElement representation closer to the spec 2023-04-21 07:54:36 +02:00
PerformanceTimeline LibWeb: Introduce Performance Timeline and its Performance functions 2023-03-23 21:00:43 +00:00
PermissionsPolicy LibWeb+LibWebView+WebContent: Add APIs to manage an autoplay allowlist 2023-04-18 16:30:02 +02:00
Platform LibWeb+Browser+Ladybird: Use JS::SafeFunction for EventLoop callbacks 2023-04-21 20:44:47 +01:00
ReferrerPolicy LibWeb: Add HTMLAnchorElement.referrerPolicy property 2023-03-31 11:36:41 +01:00
RequestIdleCallback LibWeb/HTML: Port Window.requestIdleCallback() to IDL 2023-03-07 23:33:34 +00:00
ResizeObserver LibWeb: Make factory method of ResizeObserver::ResizeObserver fallible 2023-02-22 09:55:33 +01:00
Scripts LibWeb: Store stylesheet sources as StringViews 2023-02-19 00:51:16 +01:00
SecureContexts Everywhere: Rename to_{string => deprecated_string}() where applicable 2022-12-06 08:54:33 +01:00
Selection LibWeb: Make factory method of Selection::Selection fallible 2023-02-22 09:55:33 +01:00
SRI LibWeb: Implement integrity-metadata part of fetch algorithm 2023-04-21 20:44:47 +01:00
Streams LibWeb: Fix inverted condition in WritableStream's constructor 2023-04-17 10:27:40 +02:00
SVG LibWeb: Support implicit lineto commands after moveto in SVG paths 2023-04-17 14:18:45 +02:00
Tests Everywhere: Rename WrapperGenerator to BindingsGenerator 2022-09-21 23:06:08 +01:00
UIEvents LibWeb: Port {Mouse,UI,Wheel,}Event to new String 2023-04-07 22:41:01 +02:00
URL AK+Everywhere: Change URL::path() to serialize_path() 2023-04-15 06:37:04 +02:00
UserTiming LibWeb: Implement performance.mark and performance.clearMarks 2023-03-23 21:00:43 +00:00
WebAssembly LibJS: Port Value::to_object() to NonnullGCPtr 2023-04-14 09:59:29 +02:00
WebDriver LibWeb/WebDriver: Handle WindowProxy in internal_json_clone_algorithm() 2023-04-20 14:41:31 -04:00
WebGL LibWeb: Port fire_webgl_context_event() to new FlyString 2023-04-09 17:27:27 +02:00
WebIDL LibWeb: Properly reject abrupt completion in clean_up_on_return 2023-04-17 10:27:40 +02:00
WebSockets LibWeb: Make WebSocket#send support typed arrays, Blob and DataView 2023-04-21 07:59:50 +02:00
XHR LibJS: Port create_iterator_result_object() to NonnullGCPtr 2023-04-15 16:26:42 +02:00
XML LibWeb: Port fire_a_page_transition_event() to new FlyString 2023-04-09 17:27:27 +02:00
CMakeLists.txt LibWeb: Implement integrity-metadata part of fetch algorithm 2023-04-21 20:44:47 +01:00
Dump.cpp LibWeb: Rename remaining paint_box variables to paintable_box 2023-04-20 20:43:30 +02:00
Dump.h LibWeb+Browser+Ladybird: Add menu action to dump paint tree 2023-03-18 20:23:35 +01:00
FontCache.cpp LibWeb: Scale the font when painting the text on buttons 2023-03-15 23:29:00 +01:00
FontCache.h LibWeb: Scale the font when painting the text on buttons 2023-03-15 23:29:00 +01:00
Forward.h LibWeb: Add XMLDocument stub 2023-04-21 07:59:50 +02:00
idl_files.cmake LibWeb: Add XMLDocument stub 2023-04-21 07:59:50 +02:00
Namespace.cpp LibWeb: Initialize static web strings during main-thread VM creation 2023-03-18 19:50:45 +01:00
Namespace.h LibWeb: Initialize static web strings during main-thread VM creation 2023-03-18 19:50:45 +01:00
PixelUnits.h LibWeb: Use type-correct hashing and formatting functions for pixels 2023-01-21 10:36:14 +01:00
TreeNode.h LibJS+LibWeb: Move headers around to allow including Value from Cell 2023-01-29 00:02:45 +00:00