Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 36f536ea84c254437e8b860d0ae96ca0f0f3e38e
https://github.com/WebKit/WebKit/commit/36f536ea84c254437e8b860d0ae96ca0f0f3e38e
Author: Alex Christensen <[email protected]>
Date: 2026-09-29 (Tue, 29 Sep 2026)
Changed paths:
M LayoutTests/ipc/serialized-type-info.html
M Source/WTF/wtf/PlatformHave.h
M Source/WebKit/DerivedSources-input.xcfilelist
M Source/WebKit/DerivedSources.make
M Source/WebKit/Platform/IPC/Decoder.h
M Source/WebKit/Scripts/IPCTestingHeaders-input.xcfilelist
M Source/WebKit/Scripts/IPCTestingHeaders-output.xcfilelist
M Source/WebKit/Scripts/generate-serializers.py
M Source/WebKit/Scripts/webkit/tests/GeneratedSerializers.cpp
M Source/WebKit/Scripts/webkit/tests/TestSerializedType.serialization.in
M Source/WebKit/Shared/AuxiliaryProcess.cpp
M Source/WebKit/Shared/AuxiliaryProcessCreationParameters.h
M Source/WebKit/Shared/AuxiliaryProcessCreationParameters.serialization.in
M Source/WebKit/Shared/Cocoa/ArgumentCodersCocoa.h
M Source/WebKit/Shared/Cocoa/ArgumentCodersCocoa.mm
M Source/WebKit/Shared/Cocoa/CoreIPCCFType.h
M Source/WebKit/Shared/Cocoa/CoreIPCNSCFObject.h
M Source/WebKit/Shared/Cocoa/CoreIPCNSCFObject.mm
M Source/WebKit/Shared/Cocoa/CoreIPCNSCFObject.serialization.in
M Source/WebKit/Shared/Cocoa/CoreIPCNSURLRequest.mm
M Source/WebKit/Shared/Cocoa/CoreIPCNSURLRequest.serialization.in
R Source/WebKit/Shared/Cocoa/CoreIPCRetainPtr.h
M Source/WebKit/Shared/Cocoa/CoreIPCSecureCoding.h
M Source/WebKit/Shared/Cocoa/CoreIPCSecureCoding.mm
R Source/WebKit/Shared/Cocoa/CoreIPCSecureCoding.serialization.in
M Source/WebKit/Shared/Cocoa/WebCoreArgumentCodersCocoa.serialization.in
M Source/WebKit/UIProcess/AuxiliaryProcessProxy.cpp
M Source/WebKit/WebKit.xcodeproj/project.pbxproj
M Tools/TestWebKitAPI/Tests/IPC/IPCSerialization.mm
M Tools/TestWebKitAPI/Tests/WebKit/WKWebView/IPCTestingAPI.mm
M Tools/TestWebKitAPI/Tests/WebKit/WebPage/WebPageNavigationTests.swift
M Tools/WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl
M Tools/WebKitTestRunner/InjectedBundle/TestRunner.h
Log Message:
-----------
Remove code guarded by !HAVE(WK_SECURE_CODING_NSURLREQUEST)
https://bugs.webkit.org/show_bug.cgi?id=325555
rdar://188639541
Reviewed by Chris Dumez.
Is it gone? Yes! It's really gone!
NSURLRequest was the last piece of WebKit IPC to use NSKeyedUnarchiver to
decode from IPC,
so this also removes the NSKeyedUnarchiver infrastructure needed to support it
on old OSes.
A small amount of infrastructure is also removed, which was used only inside
the old code
being removed. This includes the SecureCodingAllowed IPC attribute which tried
to limit
the types that could be decoded, and classNamesExemptFromSecureCodingCrash
which tried to
fix some crashes we introduced along the way.
This finishes a long path we began in 2022.
Tests: Tools/TestWebKitAPI/Tests/IPC/IPCSerialization.mm
Tools/TestWebKitAPI/Tests/WebKit/WKWebView/IPCTestingAPI.mm
Tools/TestWebKitAPI/Tests/WebKit/WebPage/WebPageNavigationTests.swift
* LayoutTests/ipc/serialized-type-info.html:
* Source/WTF/wtf/PlatformHave.h:
* Source/WebKit/DerivedSources-input.xcfilelist:
* Source/WebKit/DerivedSources.make:
* Source/WebKit/Platform/IPC/Decoder.h:
(IPC::Decoder::decodeWithAllowedClasses): Deleted.
* Source/WebKit/Scripts/IPCTestingHeaders-input.xcfilelist:
* Source/WebKit/Scripts/IPCTestingHeaders-output.xcfilelist:
* Source/WebKit/Scripts/generate-serializers.py:
(matches_bundle):
(decode_type):
(parse_serialized_types):
(generate_impl):
* Source/WebKit/Scripts/webkit/tests/GeneratedSerializers.cpp:
(IPC::ArgumentCoder<Namespace::OtherClass>::decode):
(IPC::ArgumentCoder<Namespace::ClassWithMemberPrecondition>::decode):
(IPC::ArgumentCoder<SoftLinkedMember>::decode):
* Source/WebKit/Scripts/webkit/tests/TestSerializedType.serialization.in:
* Source/WebKit/Shared/AuxiliaryProcess.cpp:
(WebKit::AuxiliaryProcess::applyProcessCreationParameters):
* Source/WebKit/Shared/AuxiliaryProcessCreationParameters.h:
* Source/WebKit/Shared/AuxiliaryProcessCreationParameters.serialization.in:
* Source/WebKit/Shared/Cocoa/ArgumentCodersCocoa.h:
(IPC::decodeRequiringAllowedClasses):
(IPC::ArgumentCoder<RetainPtr<T>>::decode):
(IPC::isObjectClassAllowed): Deleted.
(IPC::ArgumentCoder<CoreIPCRetainPtr<T>>::encode): Deleted.
(IPC::ArgumentCoder<CoreIPCRetainPtr<T>>::decode): Deleted.
* Source/WebKit/Shared/Cocoa/ArgumentCodersCocoa.mm:
(IPC::typeFromObject):
(-[WKSecureCodingArchivingDelegate archiver:willEncodeObject:]): Deleted.
(-[WKSecureCodingArchivingDelegate unarchiver:didDecodeObject:]): Deleted.
(-[WKSecureCodingArchivingDelegate init]): Deleted.
(-[WKSecureCodingURLWrapper wrappedURL]): Deleted.
(+[WKSecureCodingURLWrapper supportsSecureCoding]): Deleted.
(-[WKSecureCodingURLWrapper encodeWithCoder:]): Deleted.
(-[WKSecureCodingURLWrapper initWithCoder:]): Deleted.
(-[WKSecureCodingURLWrapper initWithURL:]): Deleted.
(-[WKSecureCodingCGColorWrapper wrappedColor]): Deleted.
(+[WKSecureCodingCGColorWrapper supportsSecureCoding]): Deleted.
(-[WKSecureCodingCGColorWrapper encodeWithCoder:]): Deleted.
(-[WKSecureCodingCGColorWrapper initWithCoder:]): Deleted.
(-[WKSecureCodingCGColorWrapper initWithCGColor:]): Deleted.
(IPC::encodeObjectDirectly<NSObject<NSSecureCoding>>): Deleted.
(IPC::shouldEnableStrictMode): Deleted.
(IPC::decodeObjectDirectlyRequiringAllowedClasses<NSObject<NSSecureCoding>>):
Deleted.
(IPC::decodeObjectDirectly<CFTypeRef>):
(IPC::decodeObjectDirectlyRequiringAllowedClasses<CFTypeRef>): Deleted.
* Source/WebKit/Shared/Cocoa/CoreIPCCFType.h:
* Source/WebKit/Shared/Cocoa/CoreIPCNSCFObject.h:
* Source/WebKit/Shared/Cocoa/CoreIPCNSCFObject.mm:
(WebKit::valueFromID):
(WebKit::CoreIPCNSCFObject::valueIsAllowed): Deleted.
* Source/WebKit/Shared/Cocoa/CoreIPCNSCFObject.serialization.in:
* Source/WebKit/Shared/Cocoa/CoreIPCNSURLRequest.mm:
* Source/WebKit/Shared/Cocoa/CoreIPCNSURLRequest.serialization.in:
* Source/WebKit/Shared/Cocoa/CoreIPCRetainPtr.h: Removed.
* Source/WebKit/Shared/Cocoa/CoreIPCSecureCoding.h:
(WebKit::CoreIPCSecureCoding::CoreIPCSecureCoding): Deleted.
(WebKit::CoreIPCSecureCoding::toID const): Deleted.
(WebKit::CoreIPCSecureCoding::objectClass): Deleted.
* Source/WebKit/Shared/Cocoa/CoreIPCSecureCoding.mm:
(WebKit::SecureCoding::internalClassNamesExemptFromSecureCodingCrash): Deleted.
(WebKit::SecureCoding::classNamesExemptFromSecureCodingCrash): Deleted.
(WebKit::SecureCoding::applyProcessCreationParameters): Deleted.
(WebKit::crashWithClassName): Deleted.
(WebKit::CoreIPCSecureCoding::CoreIPCSecureCoding): Deleted.
* Source/WebKit/Shared/Cocoa/CoreIPCSecureCoding.serialization.in: Removed.
* Source/WebKit/Shared/Cocoa/WebCoreArgumentCodersCocoa.serialization.in:
* Source/WebKit/UIProcess/AuxiliaryProcessProxy.cpp:
(WebKit::AuxiliaryProcessProxy::auxiliaryProcessParameters):
* Source/WebKit/WebKit.xcodeproj/project.pbxproj:
* Tools/TestWebKitAPI/Tests/IPC/IPCSerialization.mm:
* Tools/TestWebKitAPI/Tests/WebKit/WKWebView/IPCTestingAPI.mm:
((IPCTestingAPI, CGColorInNSSecureCoding)): Deleted.
((IPCTestingAPI, NSURLWithBaseURLInNSSecureCoding)): Deleted.
* Tools/TestWebKitAPI/Tests/WebKit/WebPage/WebPageNavigationTests.swift:
(WebPageNavigationTests.secureCodingExemptClassesAppliedToAuxiliaryProcess):
Deleted.
* Tools/WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* Tools/WebKitTestRunner/InjectedBundle/TestRunner.h:
(WTR::TestRunner::haveSecureCodingRequest const): Deleted.
Canonical link: https://commits.webkit.org/322173@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications