Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 8cab381a36560866a220e47f934fa4b1bb717e0c
https://github.com/WebKit/WebKit/commit/8cab381a36560866a220e47f934fa4b1bb717e0c
Author: Nitin Mahendru <[email protected]>
Date: 2024-04-09 (Tue, 09 Apr 2024)
Changed paths:
M Source/WTF/wtf/Vector.h
M Source/WebCore/Configurations/WebCore.xcconfig
M Source/WebCore/PAL/Configurations/PAL.xcconfig
M Source/WebCore/PAL/pal/PALSwift.h
M Source/WebCore/PAL/pal/PALSwift/CryptoKitShim.swift
M Source/WebCore/PAL/pal/PALSwift/UnsafeOverlays.swift
M Source/WebCore/crypto/cocoa/CryptoAlgorithmAESGCMMac.cpp
M Source/WebCore/crypto/cocoa/CryptoAlgorithmAESKWMac.cpp
Log Message:
-----------
Replacing AES impls with interop
https://bugs.webkit.org/show_bug.cgi?id=271680
radar://125367961
Reviewed by Geoffrey Garen.
All the Unsafe Bits are now in UnsafeOverlays.swift.
Also all the Cpp wrappers to work around interop shortcomings are now
inside a namespace to keep them away from global scope.
Any wrappers deemed Unsafe are now inside namespace Cpp.Unsafe.
WTF::Vector Copy operation is hard fail from Swift. This is to guard
against swift's strategy of implicity copies of C++ types for exclusivity and
memory safety.
Also the quirk added in 276651@main for destructor linkage
is moved out of the execution path.
* Source/WTF/wtf/Vector.h:
(WTF::Malloc>::Vector):
* Source/WebCore/Configurations/WebCore.xcconfig:
* Source/WebCore/PAL/Configurations/PAL.xcconfig:
* Source/WebCore/PAL/pal/PALSwift.h:
(Cpp::toOptionalVectorUInt8):
(Cpp::createVectorUInt8FromSpan):
(Cpp::appendSpanToVectorUInt8):
(Cpp::Unsafe::createConstUInt8Span):
* Source/WebCore/PAL/pal/PALSwift/CryptoKitShim.swift:
(AesGcmRV.cipherText):
(AesGcmRV.errorCode):
(AesGcm.ciphertext):
(AesKwRV.result):
(AesKw.wrap(_:keyToBeWrapped:)):
(AesKw.unwrap(_:wrappedKey:)):
(AesKwRV.outputSize): Deleted.
* Source/WebCore/PAL/pal/PALSwift/UnsafeOverlays.swift:
(HashFunction.update(_:)):
(ContiguousBytes.createConstUInt8Span(_:)):
(ContiguousBytes.createConstUInt8Span):
(VectorUInt8.appendSpan(_:)):
(VectorUInt8.appendContiguousBytes(_:)):
(Data.fromSpan(_:)):
(_CompilerBugDontUse.forceLinkageForVectorDestructor):
* Source/WebCore/crypto/cocoa/CryptoAlgorithmAESGCMMac.cpp:
(WebCore::encryptCryptoKitAESGCM):
* Source/WebCore/crypto/cocoa/CryptoAlgorithmAESKWMac.cpp:
(WebCore::wrapKeyAESKWCryptoKit):
(WebCore::unwrapKeyAESKWCryptoKit):
Canonical link: https://commits.webkit.org/277285@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes