ladybird/Userland/Libraries
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
..
LibArchive LibArchive: Read Tar archive headers through read_value 2023-03-13 15:16:20 +00:00
LibAudio LibAudio: Use read_until_filled to fill a buffer from a Stream 2023-04-12 14:02:56 -04:00
LibC LibC: Return nullptr if allocation fails in strdup() and strndup() 2023-04-15 15:38:24 +02:00
LibCards LibGfx+Userland: Add width_rounded_up() helper 2023-04-15 15:24:50 +02:00
LibChess LibChess: Allow UCIEndpoint to handle unexpected disconnections 2023-04-20 09:59:18 +01:00
LibCMake LibSyntax+Libraries: Replace TextStyle with Gfx::TextAttributes 2023-03-15 14:55:49 +01:00
LibCodeComprehension Everywhere: Use LibFileSystem where trivial 2023-03-21 19:03:21 +00:00
LibCompress LibCompress: Error on truncated uncompressed DEFLATE blocks 2023-04-12 14:02:13 -04:00
LibConfig LibConfig: Use full include path for endpoints 2023-03-24 00:31:03 +01:00
LibCore Kernel+Userland: Remove the nfds entry from /sys/kernel/processes 2023-04-21 13:55:23 +02:00
LibCoredump Everywhere: Use LibFileSystem where trivial 2023-03-21 19:03:21 +00:00
LibCpp Tests: Use FileSystem instead of DeprecatedFile 2023-04-09 20:58:54 -06:00
LibCrypt LibCrypt: Start installing headers again 2023-03-20 09:33:30 +01:00
LibCrypto LibTLS: Change CertificateKeyAlgorithm from enum to struct 2023-04-15 09:03:47 +03:30
LibDebug Everywhere: Remove unused DeprecatedString includes 2023-04-09 22:00:54 +02:00
LibDesktop Everywhere: Remove NonnullRefPtr.h includes 2023-03-06 23:46:35 +01:00
LibDeviceTree Everywhere: Remove unused DeprecatedString includes 2023-04-09 22:00:54 +02:00
LibDiff LibDiff: Make Diff::generate_only_additions take text as StringView 2022-12-20 10:58:54 +01:00
LibDNS AK: Rename Stream::write_entire_buffer to Stream::write_until_depleted 2023-03-13 15:16:20 +00:00
LibDSP Everywhere: Remove NonnullRefPtr.h includes 2023-03-06 23:46:35 +01:00
LibEDID LibEDID: Fix compiler error when ENABLE_PNP_IDS_DOWNLOAD=OFF 2023-04-06 10:26:21 -04:00
LibELF Everywhere: Use ARCH(AARCH64) instead of AK_ARCH_AARCH64 2023-04-14 19:15:19 +02:00
LibFileSystem LibFileSystem: Fix leak in read_path 2023-03-22 14:04:24 +00:00
LibFileSystemAccessClient Libraries: Convert DeprecatedFile usages to LibFileSystem 2023-03-24 10:58:43 +00:00
LibGemini AK+Everywhere: Change URL::path() to serialize_path() 2023-04-15 06:37:04 +02:00
LibGfx LibGfx: Move two globals into the only functions that use them 2023-04-21 15:55:03 +02:00
LibGL AK: Remove infallible version of StringBuilder::to_byte_buffer 2023-03-09 15:51:00 +00:00
LibGLSL Everywhere: Use _{short_,}string to create Strings from literals 2023-02-25 20:51:49 +01:00
LibGPU LibGPU: Remove DeprecatedString usage 2023-01-30 13:49:52 -05:00
LibGUI WindowServer+LibGUI: Port WindowServer's Menu name to new String 2023-04-19 07:59:54 +02:00
LibHTTP AK+Everywhere: Change URL::path() to serialize_path() 2023-04-15 06:37:04 +02:00
LibIDL Libraries: Convert DeprecatedFile usages to LibFileSystem 2023-03-24 10:58:43 +00:00
LibImageDecoderClient LibImageDecoderClient: Fix minor const-correctness issue 2023-02-21 00:54:04 +01:00
LibIMAP Everywhere: Remove unintentional partial stream reads and writes 2023-03-13 15:16:20 +00:00
LibIPC AK: Rename Stream::read_entire_buffer to Stream::read_until_filled 2023-03-13 15:16:20 +00:00
LibJS LibWeb+Browser+Ladybird: Use JS::SafeFunction for EventLoop callbacks 2023-04-21 20:44:47 +01:00
LibKeyboard LibCore: Rename File to DeprecatedFile 2023-02-13 00:50:07 +00:00
LibLine Everywhere: Remove unused DeprecatedString includes 2023-04-09 22:00:54 +02:00
LibLocale Everywhere: Use ReadonlySpan<T> instead of Span<T const> 2023-02-08 19:15:45 +00:00
LibMain Everywhere: Explicitly link all binaries against the LibC target 2022-11-01 14:49:09 +00:00
LibManual AK+Everywhere: Replace URL::paths() with path_segment_at_index() 2023-04-15 06:37:04 +02:00
LibMarkdown LibMarkdown: Avoid catastrophic backtracking in thematic break regex 2023-04-14 16:02:59 +01:00
LibPartition LibPartition: Make Kernel parts const-correct re: StorageDevice& 2023-02-21 00:54:04 +01:00
LibPCIDB AK+Everywhere: Rename String to DeprecatedString 2022-12-06 08:54:33 +01:00
LibPDF Everywhere: Fix a few typos 2023-04-12 19:37:35 +02:00
LibProtocol AK: Rename Stream::write_entire_buffer to Stream::write_until_depleted 2023-03-13 15:16:20 +00:00
LibRegex LibRegex: Avoid calling GenericLexer::consume() past EOF 2023-04-14 12:33:54 +02:00
LibSanitizer LibC: Properly implement stack protectors 2022-11-01 14:49:09 +00:00
LibSoftGPU LibSoftGPU: Use multiplication instead of division for linear fog 2023-02-18 01:45:00 +01:00
LibSQL Everywhere: Remove unused DeprecatedString includes 2023-04-09 22:00:54 +02:00
LibSymbolication Everywhere: Use LibFileSystem where trivial 2023-03-21 19:03:21 +00:00
LibSyntax Spreadsheet+LibSyntax: Never insert spans directly 2023-04-14 10:00:52 +02:00
LibSystem Meta+Userland: Add ENABLE_USERSPACE_COVERAGE_COLLECTION CMake option 2022-05-02 01:46:18 +02:00
LibTest LibTest: Add a TRY_OR_FAIL macro 2023-04-09 18:27:06 +02:00
LibTextCodec Everywhere: Rename equals_ignoring_case => equals_ignoring_ascii_case 2023-03-10 13:15:44 +01:00
LibThreading LibThreading: Resolve BackgroundAction error callback use-after-free 2023-03-23 21:05:12 +01:00
LibTimeZone LibJS+LibTimeZone: Explicitly canonicalize "GMT" to "UTC" 2023-03-23 15:30:21 +00:00
LibTLS LibTLS: Change CertificateKeyAlgorithm from enum to struct 2023-04-15 09:03:47 +03:30
LibUnicode AK+LibUnicode: Implement String::equals_ignoring_case without allocating 2023-03-08 18:57:53 +00:00
LibUSBDB AK+Everywhere: Rename String to DeprecatedString 2022-12-06 08:54:33 +01:00
LibVideo LibVideo: Remove hook to notify clients upon reaching end of the stream 2023-04-17 01:16:04 +02:00
LibVirtGPU LibCore: Remove Stream.h 2023-02-13 00:50:07 +00:00
LibVT AK+Everywhere: Change URL::path() to serialize_path() 2023-04-15 06:37:04 +02:00
LibWasm LibWasm: Replace usages of the Endian bytes accessor 2023-04-12 07:33:15 -04:00
LibWeb LibWeb: Implement integrity-metadata part of fetch algorithm 2023-04-21 20:44:47 +01:00
LibWebSocket AK+Everywhere: Change URL::path() to serialize_path() 2023-04-15 06:37:04 +02:00
LibWebView LibWeb+LibWebView+WebContent: Add APIs to manage an autoplay allowlist 2023-04-18 16:30:02 +02:00
LibX86 LibX86: Remove i686 support 2022-12-28 11:53:41 +01:00
LibXML Everywhere: Rename equals_ignoring_case => equals_ignoring_ascii_case 2023-03-10 13:15:44 +01:00
CMakeLists.txt LibFileSystem: Create LibFileSystem 2023-03-21 19:03:21 +00:00