Changeset 268605 in webkit
- Timestamp:
- Oct 16, 2020 12:38:48 PM (4 years ago)
- Location:
- trunk/Source
- Files:
-
- 19 added
- 1 deleted
- 26 edited
- 9 copied
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r268603 r268605 1 2020-10-16 Jiewen Tan <jiewen_tan@apple.com> 2 3 [WebAuthn] Implement a dummy WebAuthnProcess 4 https://bugs.webkit.org/show_bug.cgi?id=217559 5 <rdar://problem/70168749> 6 7 Reviewed by Brent Fulgham. 8 9 No tests. 10 11 * en.lproj/Localizable.strings: 12 Provides a name for the WebAuthn process. 13 1 14 2020-10-16 Don Olmstead <don.olmstead@sony.com> 2 15 -
trunk/Source/WebCore/en.lproj/Localizable.strings
r267414 r268605 47 47 "%@ Service Worker (%@)" = "%@ Service Worker (%@)"; 48 48 49 /* visible name of the WebAuthn process. The argument is the application name. */ 50 "%@ Web Authentication" = "%@ Web Authentication"; 51 49 52 /* Visible name of the web process. The argument is the application name. */ 50 53 "%@ Web Content" = "%@ Web Content"; -
trunk/Source/WebKit/CMakeLists.txt
r268577 r268605 72 72 "${WEBKIT_DIR}/UIProcess/WebAuthentication/Mock" 73 73 "${WEBKIT_DIR}/UIProcess/WebsiteData" 74 "${WEBKIT_DIR}/WebAuthnProcess" 74 75 "${WEBKIT_DIR}/WebProcess" 75 76 "${WEBKIT_DIR}/WebProcess/ApplePay" -
trunk/Source/WebKit/ChangeLog
r268602 r268605 1 2020-10-16 Jiewen Tan <jiewen_tan@apple.com> 2 3 [WebAuthn] Implement a dummy WebAuthnProcess 4 https://bugs.webkit.org/show_bug.cgi?id=217559 5 <rdar://problem/70168749> 6 7 Reviewed by Brent Fulgham. 8 9 Previous patch r268248 introduces a new daemon to handle all WebAuthn requests. However, after more deeper investigations, the daemon 10 story is not very compelling for WebKit. Here are the two major road blockers: 11 1) The major one is on macOS. New daemons cannot be installed without a system update. It means relocatable Safari (e.g. STP) 12 and staged Safari on downlevel OSes will not get this feature. And relocatable STP can only utilize the system daemon. This 13 seems a bummer especially for the STP case given it is heavily used to test latest web features. 14 2) Additional plumbing is needed for testing and engineering builds. This problem is specific to WebKit and is on both macOS and iOS. 15 WebKit doesn't build roots to test engineering builds, which is required to update the plist on the above location. Hence, a separate 16 configuration is needed to generate a different plist that points to the right engineering binary and additional scripts will be needed 17 to ask launchd to load the plist before running any tests. Some extra exercises are probably needed to not confuse launchd about the 18 engineering binary and system binary as well. 19 20 Given the above constraints, a new architecture is proposed to make the daemon a WebKit XPC service/process instead and leave the launchd 21 event handler to a new Safari daemon. The launchd related feature is only on iOS and therefore it really doesn't make sense to overcome 22 all the above macOS constraints. Having different architectures on iOS (a daemon) and on macOS (a XPC service) accordingly will introduce 23 tons of overhead for maintainance as well. That's why relying on a Safari daemon to do the job is the most reasonable option. 24 25 This patch therefore focuses on making the WebAuthn process happen and removes the WebAuthn daemon. 26 27 * CMakeLists.txt: 28 * Configurations/WebAuthnService.xcconfig: Renamed from Source/WebKit/Configurations/WebAuthenticationAgent.xcconfig. 29 * Configurations/WebKit.xcconfig: 30 * Daemons/WebAuthenticationAgent/WebAuthenticationAgent.entitlements: Removed. 31 * Daemons/WebAuthenticationAgent/com.apple.webkit.WebAuthenticationAgent.plist: Removed. 32 * DerivedSources-input.xcfilelist: 33 * DerivedSources-output.xcfilelist: 34 * DerivedSources.make: 35 Paperwork for building the new WebAuthn process. 36 37 * Platform/ExtraPrivateSymbolsForTAPI.h: 38 * Shared/AuxiliaryProcess.h: 39 * Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceEntryPoint.h: 40 * Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceMain.mm: 41 (WebKit::XPCServiceEventHandler): 42 * Shared/mac/AuxiliaryProcessMac.mm: 43 (WebKit::processStorageClass): 44 (WebKit::sandboxDirectory): 45 Paperwork for introducing the new WebAuthn process. Mostly copied from GPU process. 46 47 * Sources.txt: 48 * SourcesCocoa.txt: 49 Paperwork for building the new WebAuthn process. 50 51 * UIProcess/AuxiliaryProcessProxy.cpp: 52 (WebKit::AuxiliaryProcessProxy::getLaunchOptions): 53 * UIProcess/Launcher/ProcessLauncher.h: 54 * UIProcess/Launcher/mac/ProcessLauncherMac.mm: 55 (WebKit::serviceName): 56 (WebKit::shouldLeakBoost): 57 * UIProcess/WebAuthentication/WebAuthnProcessProxy.cpp: Added. 58 (WebKit::WebAuthnProcessProxy::singleton): 59 (WebKit::WebAuthnProcessProxy::WebAuthnProcessProxy): 60 (WebKit::WebAuthnProcessProxy::getLaunchOptions): 61 (WebKit::WebAuthnProcessProxy::connectionWillOpen): 62 (WebKit::WebAuthnProcessProxy::processWillShutDown): 63 (WebKit::WebAuthnProcessProxy::getWebAuthnProcessConnection): 64 (WebKit::WebAuthnProcessProxy::webAuthnProcessCrashed): 65 (WebKit::WebAuthnProcessProxy::didClose): 66 (WebKit::WebAuthnProcessProxy::didReceiveInvalidMessage): 67 (WebKit::WebAuthnProcessProxy::didFinishLaunching): 68 (WebKit::WebAuthnProcessProxy::updateProcessAssertion): 69 * UIProcess/WebAuthentication/WebAuthnProcessProxy.h: Added. 70 * UIProcess/WebAuthentication/WebAuthnProcessProxy.messages.in: Added. 71 * UIProcess/WebProcessPool.cpp: 72 (WebKit::WebProcessPool::getWebAuthnProcessConnection): 73 * UIProcess/WebProcessPool.h: 74 * UIProcess/WebProcessProxy.cpp: 75 (WebKit::WebProcessProxy::getWebAuthnProcessConnection): 76 * UIProcess/WebProcessProxy.h: 77 * UIProcess/WebProcessProxy.messages.in: 78 * WebAuthnProcess/EntryPoint/Cocoa/XPCService/WebAuthnService/Info-OSX.plist: Copied from Source/WebKit/Daemons/WebAuthenticationAgent/Info.plist. 79 * WebAuthnProcess/EntryPoint/Cocoa/XPCService/WebAuthnService/Info-iOS.plist: Renamed from Source/WebKit/Daemons/WebAuthenticationAgent/Info.plist. 80 * WebAuthnProcess/EntryPoint/Cocoa/XPCService/WebAuthnServiceEntryPoint.mm: Copied from Source/WebKit/Daemons/WebAuthenticationAgent/main.mm. 81 (WebKit::WebAuthnServiceInitializerDelegate::WebAuthnServiceInitializerDelegate): 82 (WebKit::initializeAuxiliaryProcess<WebAuthnProcess>): 83 (WEBAUTHEN_SERVICE_INITIALIZER): 84 * WebAuthnProcess/WebAuthnConnectionToWebProcess.cpp: Added. 85 (WebKit::WebAuthnConnectionToWebProcess::create): 86 (WebKit::WebAuthnConnectionToWebProcess::WebAuthnConnectionToWebProcess): 87 (WebKit::WebAuthnConnectionToWebProcess::~WebAuthnConnectionToWebProcess): 88 (WebKit::WebAuthnConnectionToWebProcess::didClose): 89 (WebKit::WebAuthnConnectionToWebProcess::didReceiveInvalidMessage): 90 * WebAuthnProcess/WebAuthnConnectionToWebProcess.h: Copied from Source/WebKit/Daemons/WebAuthenticationAgent/main.mm. 91 (WebKit::WebAuthnConnectionToWebProcess::connection): 92 (WebKit::WebAuthnConnectionToWebProcess::WebAuthnProcessProcess): 93 (WebKit::WebAuthnConnectionToWebProcess::webProcessIdentifier const): 94 * WebAuthnProcess/WebAuthnConnectionToWebProcess.messages.in: Added. 95 * WebAuthnProcess/WebAuthnProcess.cpp: Added. 96 (WebKit::WebAuthnProcess::WebAuthnProcess): 97 (WebKit::WebAuthnProcess::~WebAuthnProcess): 98 (WebKit::WebAuthnProcess::createWebAuthnConnectionToWebProcess): 99 (WebKit::WebAuthnProcess::removeWebAuthnConnectionToWebProcess): 100 (WebKit::WebAuthnProcess::connectionToWebProcessClosed): 101 (WebKit::WebAuthnProcess::shouldTerminate): 102 (WebKit::WebAuthnProcess::didClose): 103 (WebKit::WebAuthnProcess::lowMemoryHandler): 104 (WebKit::WebAuthnProcess::initializeWebAuthnProcess): 105 (WebKit::WebAuthnProcess::prepareToSuspend): 106 (WebKit::WebAuthnProcess::processDidResume): 107 (WebKit::WebAuthnProcess::resume): 108 (WebKit::WebAuthnProcess::processDidTransitionToForeground): 109 (WebKit::WebAuthnProcess::processDidTransitionToBackground): 110 (WebKit::WebAuthnProcess::webProcessConnection const): 111 * WebAuthnProcess/WebAuthnProcess.h: Added. 112 * WebAuthnProcess/WebAuthnProcess.messages.in: Added. 113 * WebAuthnProcess/WebAuthnProcessCreationParameters.cpp: Copied from Source/WebKit/Daemons/WebAuthenticationAgent/main.mm. 114 (WebKit::WebAuthnProcessCreationParameters::encode const): 115 (WebKit::WebAuthnProcessCreationParameters::decode): 116 * WebAuthnProcess/WebAuthnProcessCreationParameters.h: Copied from Source/WebKit/Daemons/WebAuthenticationAgent/main.mm. 117 * WebAuthnProcess/ios/WebAuthnProcessIOS.mm: Copied from Source/WebKit/Daemons/WebAuthenticationAgent/main.mm. 118 (WebKit::WebAuthnProcess::initializeProcess): 119 (WebKit::WebAuthnProcess::initializeProcessName): 120 (WebKit::WebAuthnProcess::initializeSandbox): 121 * WebAuthnProcess/mac/WebAuthnProcessMac.mm: Added. 122 (WebKit::WebAuthnProcess::initializeProcess): 123 (WebKit::WebAuthnProcess::initializeProcessName): 124 (WebKit::WebAuthnProcess::initializeSandbox): 125 Paperwork for introducing the new WebAuthn process. Mostly copied from GPU process. 126 127 * WebAuthnProcess/mac/com.apple.WebKit.WebAuthnProcess.sb.in: Added. 128 The sandbox profile is originally from the GPU Process with IOKit related rules removed. Will tighten it again after the process is fully functional. 129 130 * WebKit.xcodeproj/project.pbxproj: 131 Paperwork for building the new WebAuthn process. 132 133 * WebProcess/WebAuthentication/WebAuthnProcessConnection.cpp: Copied from Source/WebKit/Daemons/WebAuthenticationAgent/main.mm. 134 (WebKit::WebAuthnProcessConnection::WebAuthnProcessConnection): 135 (WebKit::WebAuthnProcessConnection::~WebAuthnProcessConnection): 136 (WebKit::WebAuthnProcessConnection::didClose): 137 (WebKit::WebAuthnProcessConnection::didReceiveInvalidMessage): 138 * WebProcess/WebAuthentication/WebAuthnProcessConnection.h: Renamed from Source/WebKit/Daemons/WebAuthenticationAgent/main.mm. 139 (WebKit::WebAuthnProcessConnection::create): 140 (WebKit::WebAuthnProcessConnection::connection): 141 * WebProcess/WebAuthentication/WebAuthnProcessConnection.messages.in: Added. 142 * WebProcess/WebAuthentication/WebAuthnProcessConnectionInfo.h: Added. 143 (WebKit::WebAuthnProcessConnectionInfo::identifier const): 144 (WebKit::WebAuthnProcessConnectionInfo::releaseIdentifier): 145 (WebKit::WebAuthnProcessConnectionInfo::encode const): 146 (WebKit::WebAuthnProcessConnectionInfo::decode): 147 * WebProcess/WebProcess.cpp: 148 (WebKit::getWebAuthnProcessConnection): 149 (WebKit::WebProcess::ensureWebAuthnProcessConnection): 150 (WebKit::WebProcess::webAuthnProcessConnectionClosed): 151 * WebProcess/WebProcess.h: 152 (WebKit::WebProcess::existingWebAuthnProcessConnection): 153 Paperwork for introducing the new WebAuthn process. Mostly copied from GPU process. 154 1 155 2020-10-16 Jiewen Tan <jiewen_tan@apple.com> 2 156 -
trunk/Source/WebKit/Configurations/WebAuthnService.xcconfig
r268604 r268605 24 24 #include "BaseXPCService.xcconfig" 25 25 26 PRODUCT_NAME = com.apple.WebKit.WebAuth enticationAgent;26 PRODUCT_NAME = com.apple.WebKit.WebAuthn; 27 27 PRODUCT_BUNDLE_IDENTIFIER = $(PRODUCT_NAME); 28 INFOPLIST_FILE = Daemons/WebAuthenticationAgent/Info.plist; 28 INFOPLIST_FILE[sdk=embedded*] = WebAuthnProcess/EntryPoint/Cocoa/XPCService/WebAuthnService/Info-iOS.plist; 29 INFOPLIST_FILE[sdk=macosx*] = WebAuthnProcess/EntryPoint/Cocoa/XPCService/WebAuthnService/Info-OSX.plist; 29 30 30 31 OTHER_LDFLAGS = $(inherited) $(OTHER_LDFLAGS_VERSIONED_FRAMEWORK_PATH) $(WK_RELOCATABLE_FRAMEWORKS_LDFLAGS); … … 34 35 ENTITLEMENTS_REQUIRED_USE_INTERNAL_SDK_NO = NO; 35 36 ENTITLEMENTS_REQUIRED_USE_INTERNAL_SDK_YES = $(ENTITLEMENTS_REQUIRED); 36 37 CODE_SIGN_ENTITLEMENTS = Daemons/WebAuthenticationAgent/WebAuthenticationAgent.entitlements; -
trunk/Source/WebKit/Configurations/WebKit.xcconfig
r268377 r268605 155 155 156 156 EXCLUDED_SOURCE_FILE_NAMES = Resources/ios/*; 157 EXCLUDED_SOURCE_FILE_NAMES[sdk=iphone*] = PluginProcessShim.dylib SecItemShim.dylib WebProcessShim.dylib *.pdf Resources/mac/* com.apple.WebKit.NetworkProcess.sb com.apple.WebKit.GPUProcess.sb com.apple.Web Process.sb com.apple.WebKit.plugin-common.sb PlugInSandboxProfiles/*.sb;157 EXCLUDED_SOURCE_FILE_NAMES[sdk=iphone*] = PluginProcessShim.dylib SecItemShim.dylib WebProcessShim.dylib *.pdf Resources/mac/* com.apple.WebKit.NetworkProcess.sb com.apple.WebKit.GPUProcess.sb com.apple.WebKit.WebAuthnProcess.sb com.apple.WebProcess.sb com.apple.WebKit.plugin-common.sb PlugInSandboxProfiles/*.sb; 158 158 159 159 INSTALLHDRS_SCRIPT_PHASE = YES; -
trunk/Source/WebKit/DerivedSources-input.xcfilelist
r268577 r268605 106 106 $(PROJECT_DIR)/UIProcess/VisitedLinkStore.messages.in 107 107 $(PROJECT_DIR)/UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy.messages.in 108 $(PROJECT_DIR)/UIProcess/WebAuthentication/WebAuthnProcessProxy.messages.in 108 109 $(PROJECT_DIR)/UIProcess/WebCookieManagerProxy.messages.in 109 110 $(PROJECT_DIR)/UIProcess/WebFullScreenManagerProxy.messages.in … … 117 118 $(PROJECT_DIR)/UIProcess/ios/WebDeviceOrientationUpdateProviderProxy.messages.in 118 119 $(PROJECT_DIR)/UIProcess/mac/SecItemShimProxy.messages.in 120 $(PROJECT_DIR)/WebAuthnProcess/WebAuthnConnectionToWebProcess.messages.in 121 $(PROJECT_DIR)/WebAuthnProcess/WebAuthnProcess.messages.in 122 $(PROJECT_DIR)/WebAuthnProcess/mac/com.apple.WebKit.WebAuthnProcess.sb.in 119 123 $(PROJECT_DIR)/WebProcess/ApplePay/WebPaymentCoordinator.messages.in 120 124 $(PROJECT_DIR)/WebProcess/Automation/WebAutomationSessionProxy.js … … 156 160 $(PROJECT_DIR)/WebProcess/UserContent/WebUserContentController.messages.in 157 161 $(PROJECT_DIR)/WebProcess/WebAuthentication/WebAuthenticatorCoordinator.messages.in 162 $(PROJECT_DIR)/WebProcess/WebAuthentication/WebAuthnProcessConnection.messages.in 158 163 $(PROJECT_DIR)/WebProcess/WebCoreSupport/WebDeviceOrientationUpdateProvider.messages.in 159 164 $(PROJECT_DIR)/WebProcess/WebPage/Cocoa/TextCheckingControllerProxy.messages.in -
trunk/Source/WebKit/DerivedSources-output.xcfilelist
r268577 r268605 293 293 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebKit2/WebAuthenticatorCoordinatorProxyMessages.h 294 294 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebKit2/WebAuthenticatorCoordinatorProxyMessagesReplies.h 295 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebKit2/WebAuthnConnectionToWebProcessMessageReceiver.cpp 296 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebKit2/WebAuthnConnectionToWebProcessMessages.h 297 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebKit2/WebAuthnConnectionToWebProcessMessagesReplies.h 298 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebKit2/WebAuthnProcessConnectionMessageReceiver.cpp 299 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebKit2/WebAuthnProcessConnectionMessages.h 300 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebKit2/WebAuthnProcessConnectionMessagesReplies.h 301 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebKit2/WebAuthnProcessMessageReceiver.cpp 302 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebKit2/WebAuthnProcessMessages.h 303 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebKit2/WebAuthnProcessMessagesReplies.h 304 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebKit2/WebAuthnProcessProxyMessageReceiver.cpp 305 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebKit2/WebAuthnProcessProxyMessages.h 306 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebKit2/WebAuthnProcessProxyMessagesReplies.h 295 307 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebKit2/WebAutomationSessionMessageReceiver.cpp 296 308 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebKit2/WebAutomationSessionMessages.h … … 426 438 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebKit2/com.apple.WebKit.GPUProcess.sb 427 439 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebKit2/com.apple.WebKit.NetworkProcess.sb 440 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebKit2/com.apple.WebKit.WebAuthnProcess.sb 428 441 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebKit2/com.apple.WebKit.plugin-common.sb 429 442 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebKit2/com.apple.WebProcess.sb -
trunk/Source/WebKit/DerivedSources.make
r268577 r268605 46 46 $(WebKit2)/Shared/Authentication \ 47 47 $(WebKit2)/Shared/mac \ 48 $(WebKit2)/WebAuthnProcess \ 49 $(WebKit2)/WebAuthnProcess/mac \ 48 50 $(WebKit2)/WebProcess/ApplePay \ 49 51 $(WebKit2)/WebProcess/ApplicationCache \ … … 141 143 UIProcess/GPU/GPUProcessProxy \ 142 144 UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy \ 145 UIProcess/WebAuthentication/WebAuthnProcessProxy \ 143 146 UIProcess/WebPasteboardProxy \ 144 147 UIProcess/UserContent/WebUserContentControllerProxy \ … … 215 218 WebProcess/WebPage/Cocoa/TextCheckingControllerProxy \ 216 219 WebProcess/WebPage/ViewUpdateDispatcher \ 220 WebProcess/WebAuthentication/WebAuthnProcessConnection \ 217 221 PluginProcess/WebProcessConnection \ 218 222 PluginProcess/PluginControllerProxy \ … … 241 245 GPUProcess/media/RemoteMediaPlayerManagerProxy \ 242 246 GPUProcess/media/RemoteAudioDestinationManager \ 247 WebAuthnProcess/WebAuthnConnectionToWebProcess \ 248 WebAuthnProcess/WebAuthnProcess \ 243 249 # 244 250 … … 286 292 com.apple.WebKit.plugin-common.sb \ 287 293 com.apple.WebKit.NetworkProcess.sb \ 288 com.apple.WebKit.GPUProcess.sb 294 com.apple.WebKit.GPUProcess.sb \ 295 com.apple.WebKit.WebAuthnProcess.sb 289 296 290 297 all : $(SANDBOX_PROFILES) -
trunk/Source/WebKit/Platform/ExtraPrivateSymbolsForTAPI.h
r253098 r268605 35 35 void WebContentServiceInitializer(); 36 36 void GPUServiceInitializer(); 37 void WebAuthnServiceInitializer(); 37 38 38 39 #ifdef __cplusplus -
trunk/Source/WebKit/Shared/AuxiliaryProcess.h
r261254 r268605 1 1 /* 2 * Copyright (C) 2010-20 19Apple Inc. All rights reserved.2 * Copyright (C) 2010-2020 Apple Inc. All rights reserved. 3 3 * 4 4 * Redistribution and use in source and binary forms, with or without … … 50 50 Plugin, 51 51 #if ENABLE(GPU_PROCESS) 52 GPU 52 GPU, 53 #endif 54 #if ENABLE(WEB_AUTHN) 55 WebAuthn 53 56 #endif 54 57 }; -
trunk/Source/WebKit/Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceEntryPoint.h
r261094 r268605 43 43 #define PLUGIN_SERVICE_INITIALIZER PluginServiceInitializer 44 44 #define GPU_SERVICE_INITIALIZER GPUServiceInitializer 45 #define WEBAUTHN_SERVICE_INITIALIZER WebAuthnServiceInitializer 45 46 46 47 namespace WebKit { -
trunk/Source/WebKit/Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceMain.mm
r268570 r268605 71 71 else if (!strcmp(serviceName, "com.apple.WebKit.GPU")) 72 72 entryPointFunctionName = CFSTR(STRINGIZE_VALUE_OF(GPU_SERVICE_INITIALIZER)); 73 else if (!strcmp(serviceName, "com.apple.WebKit.WebAuthn")) 74 entryPointFunctionName = CFSTR(STRINGIZE_VALUE_OF(WEBAUTHN_SERVICE_INITIALIZER)); 73 75 else 74 76 RELEASE_ASSERT_NOT_REACHED(); -
trunk/Source/WebKit/Shared/mac/AuxiliaryProcessMac.mm
r263857 r268605 232 232 return "WebKitGPUSandbox"; 233 233 #endif 234 #if ENABLE(WEB_AUTHN) 235 case AuxiliaryProcess::ProcessType::WebAuthn: 236 return "WebKitWebAuthnSandbox"; 237 #endif 234 238 } 235 239 } … … 294 298 break; 295 299 #endif 300 #if ENABLE(WEB_AUTHN) 301 case AuxiliaryProcess::ProcessType::WebAuthn: 302 directory.append("/com.apple.WebKit.WebAuthn.Sandbox"); 303 break; 304 #endif 296 305 } 297 306 -
trunk/Source/WebKit/Sources.txt
r268287 r268605 473 473 UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy.cpp 474 474 UIProcess/WebAuthentication/WebAuthenticationRequestData.cpp 475 UIProcess/WebAuthentication/WebAuthnProcessProxy.cpp 475 476 476 477 UIProcess/WebsiteData/WebDeviceOrientationAndMotionAccessController.cpp … … 478 479 UIProcess/WebsiteData/WebsiteDataStore.cpp 479 480 UIProcess/WebsiteData/WebsiteDataStoreConfiguration.cpp 481 482 WebAuthnProcess/WebAuthnConnectionToWebProcess.cpp 483 WebAuthnProcess/WebAuthnProcess.cpp 484 WebAuthnProcess/WebAuthnProcessCreationParameters.cpp 480 485 481 486 WebProcess/WebConnectionToUIProcess.cpp … … 627 632 628 633 WebProcess/WebAuthentication/WebAuthenticatorCoordinator.cpp 634 WebProcess/WebAuthentication/WebAuthnProcessConnection.cpp 629 635 630 636 WebProcess/WebCoreSupport/SessionStateConversion.cpp -
trunk/Source/WebKit/SourcesCocoa.txt
r268577 r268605 551 551 UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm 552 552 553 WebAuthnProcess/EntryPoint/Cocoa/XPCService/WebAuthnServiceEntryPoint.mm 554 WebAuthnProcess/ios/WebAuthnProcessIOS.mm 555 WebAuthnProcess/mac/WebAuthnProcessMac.mm 556 553 557 WebProcess/API/Cocoa/WKWebProcess.cpp 554 558 -
trunk/Source/WebKit/UIProcess/AuxiliaryProcessProxy.cpp
r263248 r268605 85 85 break; 86 86 #endif 87 #if ENABLE(WEB_AUTHN) 88 case ProcessLauncher::ProcessType::WebAuthn: 89 varname = "WEBAUTHN_PROCESS_CMD_PREFIX"; 90 break; 91 #endif 87 92 } 88 93 const char* processCmdPrefix = getenv(varname); -
trunk/Source/WebKit/UIProcess/Launcher/ProcessLauncher.h
r264178 r268605 74 74 Network, 75 75 #if ENABLE(GPU_PROCESS) 76 GPU 76 GPU, 77 #endif 78 #if ENABLE(WEB_AUTHN) 79 WebAuthn 77 80 #endif 78 81 }; -
trunk/Source/WebKit/UIProcess/Launcher/mac/ProcessLauncherMac.mm
r264178 r268605 61 61 return "com.apple.WebKit.GPU"; 62 62 #endif 63 #if ENABLE(WEB_AUTHN) 64 case ProcessLauncher::ProcessType::WebAuthn: 65 return "com.apple.WebKit.WebAuthn"; 66 #endif 63 67 #if ENABLE(NETSCAPE_PLUGIN_API) 64 68 case ProcessLauncher::ProcessType::Plugin: … … 75 79 return true; 76 80 #else 77 // On Mac, leak a boost onto the NetworkProcess and GPUProcess.81 // On Mac, leak a boost onto the NetworkProcess, GPUProcess, and WebAuthnProcess. 78 82 #if ENABLE(GPU_PROCESS) 79 83 if (launchOptions.processType == ProcessLauncher::ProcessType::GPU) 84 return true; 85 #endif 86 #if ENABLE(WEB_AUTHN) 87 if (launchOptions.processType == ProcessLauncher::ProcessType::WebAuthn) 80 88 return true; 81 89 #endif -
trunk/Source/WebKit/UIProcess/WebProcessPool.cpp
r268449 r268605 117 117 #endif 118 118 119 #if ENABLE(WEB_AUTHN) 120 #include "WebAuthnProcessConnectionInfo.h" 121 #include "WebAuthnProcessProxy.h" 122 #endif 123 119 124 #if ENABLE(REMOTE_INSPECTOR) 120 125 #include <JavaScriptCore/RemoteInspector.h> … … 490 495 WEBPROCESSPOOL_RELEASE_LOG_ERROR(Process, "getGPUProcessConnection: Failed first attempt, retrying"); 491 496 GPUProcessProxy::singleton().getGPUProcessConnection(*webProcessProxy, WTFMove(reply)); 497 return; 498 } 499 reply(connectionInfo); 500 }); 501 } 502 #endif 503 504 #if ENABLE(WEB_AUTHN) 505 void WebProcessPool::getWebAuthnProcessConnection(WebProcessProxy& webProcessProxy, Messages::WebProcessProxy::GetWebAuthnProcessConnection::DelayedReply&& reply) 506 { 507 WebAuthnProcessProxy::singleton().getWebAuthnProcessConnection(webProcessProxy, [this, weakThis = makeWeakPtr(*this), webProcessProxy = makeWeakPtr(webProcessProxy), reply = WTFMove(reply)] (auto& connectionInfo) mutable { 508 if (UNLIKELY(!IPC::Connection::identifierIsValid(connectionInfo.identifier()) && webProcessProxy && weakThis)) { 509 WEBPROCESSPOOL_RELEASE_LOG_ERROR(Process, "getWebAuthnProcessConnection: Failed first attempt, retrying"); 510 WebAuthnProcessProxy::singleton().getWebAuthnProcessConnection(*webProcessProxy, WTFMove(reply)); 492 511 return; 493 512 } -
trunk/Source/WebKit/UIProcess/WebProcessPool.h
r268065 r268605 359 359 #endif 360 360 361 #if ENABLE(WEB_AUTHN) 362 void getWebAuthnProcessConnection(WebProcessProxy&, Messages::WebProcessProxy::GetWebAuthnProcessConnectionDelayedReply&&); 363 #endif 364 361 365 // Network Process Management 362 366 void networkProcessCrashed(NetworkProcessProxy&); -
trunk/Source/WebKit/UIProcess/WebProcessProxy.cpp
r268517 r268605 770 770 #endif 771 771 772 #if ENABLE(WEB_AUTHN) 773 void WebProcessProxy::getWebAuthnProcessConnection(Messages::WebProcessProxy::GetWebAuthnProcessConnection::DelayedReply&& reply) 774 { 775 m_processPool->getWebAuthnProcessConnection(*this, WTFMove(reply)); 776 } 777 #endif 778 772 779 #if !PLATFORM(COCOA) 773 780 bool WebProcessProxy::platformIsBeingDebugged() const -
trunk/Source/WebKit/UIProcess/WebProcessProxy.h
r268497 r268605 452 452 #endif 453 453 454 #if ENABLE(WEB_AUTHN) 455 void getWebAuthnProcessConnection(Messages::WebProcessProxy::GetWebAuthnProcessConnectionDelayedReply&&); 456 #endif 457 454 458 bool platformIsBeingDebugged() const; 455 459 bool shouldAllowNonValidInjectedCode() const; -
trunk/Source/WebKit/UIProcess/WebProcessProxy.messages.in
r263038 r268605 43 43 #endif 44 44 45 #if ENABLE(WEB_AUTHN) 46 GetWebAuthnProcessConnection() -> (struct WebKit::WebAuthnProcessConnectionInfo connectionInfo) Synchronous 47 #endif 48 45 49 SetIsHoldingLockedFiles(bool isHoldingLockedFiles) 46 50 -
trunk/Source/WebKit/WebAuthnProcess/EntryPoint/Cocoa/XPCService/WebAuthnService/Info-OSX.plist
r268604 r268605 16 16 <string>${PRODUCT_NAME}</string> 17 17 <key>CFBundlePackageType</key> 18 <string> APPL</string>18 <string>XPC!</string> 19 19 <key>CFBundleShortVersionString</key> 20 20 <string>${SHORT_VERSION_STRING}</string> … … 25 25 <key>LSFileQuarantineEnabled</key> 26 26 <true/> 27 <key>LSBackgroundOnly</key>28 <true/>29 27 <key>NSPrincipalClass</key> 30 28 <string>NSApplication</string> 31 29 <key>LSUIElement</key> 32 30 <true/> 31 <key>XPCService</key> 32 <dict> 33 <key>ServiceType</key> 34 <string>Application</string> 35 <key>JoinExistingSession</key> 36 <true/> 37 <key>RunLoopType</key> 38 <string>NSRunLoop</string> 39 <key>_MultipleInstances</key> 40 <true/> 41 </dict> 33 42 </dict> 34 43 </plist> -
trunk/Source/WebKit/WebAuthnProcess/EntryPoint/Cocoa/XPCService/WebAuthnService/Info-iOS.plist
r268604 r268605 16 16 <string>${PRODUCT_NAME}</string> 17 17 <key>CFBundlePackageType</key> 18 <string> APPL</string>18 <string>XPC!</string> 19 19 <key>CFBundleShortVersionString</key> 20 20 <string>${SHORT_VERSION_STRING}</string> … … 25 25 <key>LSFileQuarantineEnabled</key> 26 26 <true/> 27 <key>LSBackgroundOnly</key>28 <true/>29 27 <key>NSPrincipalClass</key> 30 28 <string>NSApplication</string> 31 29 <key>LSUIElement</key> 32 30 <true/> 31 <key>XPCService</key> 32 <dict> 33 <key>ServiceType</key> 34 <string>Application</string> 35 <key>RunLoopType</key> 36 <string>NSRunLoop</string> 37 <key>_MultipleInstances</key> 38 <true/> 39 </dict> 40 <key>CanInheritApplicationStateFromOtherProcesses</key> 41 <true/> 33 42 </dict> 34 43 </plist> -
trunk/Source/WebKit/WebAuthnProcess/EntryPoint/Cocoa/XPCService/WebAuthnServiceEntryPoint.mm
r268604 r268605 26 26 #import "config.h" 27 27 28 int main(int argc, const char* argv[]) 28 #import "EnvironmentUtilities.h" 29 #import "WKBase.h" 30 #import "WebAuthnProcess.h" 31 #import "XPCServiceEntryPoint.h" 32 33 #if ENABLE(WEB_AUTHN) 34 35 namespace WebKit { 36 37 class WebAuthnServiceInitializerDelegate : public XPCServiceInitializerDelegate { 38 public: 39 WebAuthnServiceInitializerDelegate(OSObjectPtr<xpc_connection_t> connection, xpc_object_t initializerMessage) 40 : XPCServiceInitializerDelegate(WTFMove(connection), initializerMessage) 41 { 42 } 43 }; 44 45 template<> 46 void initializeAuxiliaryProcess<WebAuthnProcess>(AuxiliaryProcessInitializationParameters&& parameters) 29 47 { 30 @autoreleasepool { 31 WTFLogAlways("com.apple.webkit.WebAuthenticationAgent started."); 32 } 48 static NeverDestroyed<WebAuthnProcess> WebAuthnProcess(WTFMove(parameters)); 49 } 33 50 34 [[NSRunLoop mainRunLoop] run]; 51 } // namespace WebKit 35 52 36 return 0; 53 #endif // ENABLE(WEB_AUTHN) 54 55 extern "C" WK_EXPORT void WEBAUTHN_SERVICE_INITIALIZER(xpc_connection_t connection, xpc_object_t initializerMessage, xpc_object_t priorityBoostMessage); 56 57 void WEBAUTHN_SERVICE_INITIALIZER(xpc_connection_t connection, xpc_object_t initializerMessage, xpc_object_t priorityBoostMessage) 58 { 59 WTF::initializeMainThread(); 60 61 #if ENABLE(WEB_AUTHN) 62 WebKit::XPCServiceInitializer<WebKit::WebAuthnProcess, WebKit::WebAuthnServiceInitializerDelegate>(adoptOSObject(connection), initializerMessage, priorityBoostMessage); 63 #endif // ENABLE(WEB_AUTHN) 37 64 } -
trunk/Source/WebKit/WebAuthnProcess/WebAuthnConnectionToWebProcess.h
r268604 r268605 24 24 */ 25 25 26 # import "config.h"26 #pragma once 27 27 28 int main(int argc, const char* argv[]) 29 { 30 @autoreleasepool { 31 WTFLogAlways("com.apple.webkit.WebAuthenticationAgent started."); 32 } 28 #if ENABLE(WEB_AUTHN) 33 29 34 [[NSRunLoop mainRunLoop] run]; 30 #include "Connection.h" 31 #include "WebAuthnConnectionToWebProcessMessages.h" 32 #include <WebCore/ProcessIdentifier.h> 33 #include <wtf/RefCounted.h> 35 34 36 return 0; 37 } 35 namespace WebKit { 36 37 class WebAuthnProcess; 38 39 class WebAuthnConnectionToWebProcess 40 : public RefCounted<WebAuthnConnectionToWebProcess> 41 , IPC::Connection::Client { 42 public: 43 static Ref<WebAuthnConnectionToWebProcess> create(WebAuthnProcess&, WebCore::ProcessIdentifier, IPC::Connection::Identifier); 44 virtual ~WebAuthnConnectionToWebProcess(); 45 46 IPC::Connection& connection() { return m_connection.get(); } 47 WebAuthnProcess& WebAuthnProcessProcess() { return m_WebAuthnProcess.get(); } 48 WebCore::ProcessIdentifier webProcessIdentifier() const { return m_webProcessIdentifier; } 49 50 void cleanupForSuspension(Function<void()>&&); 51 void endSuspension(); 52 53 private: 54 WebAuthnConnectionToWebProcess(WebAuthnProcess&, WebCore::ProcessIdentifier, IPC::Connection::Identifier); 55 56 // IPC::Connection::Client 57 void didClose(IPC::Connection&) final; 58 void didReceiveInvalidMessage(IPC::Connection&, IPC::MessageName) final; 59 60 Ref<IPC::Connection> m_connection; 61 Ref<WebAuthnProcess> m_WebAuthnProcess; 62 const WebCore::ProcessIdentifier m_webProcessIdentifier; 63 }; 64 65 } // namespace WebKit 66 67 #endif // ENABLE(WEB_AUTHN) -
trunk/Source/WebKit/WebAuthnProcess/WebAuthnProcessCreationParameters.cpp
r268604 r268605 24 24 */ 25 25 26 #import "config.h" 26 #include "config.h" 27 #include "WebAuthnProcessCreationParameters.h" 27 28 28 int main(int argc, const char* argv[]) 29 #if ENABLE(WEB_AUTHN) 30 31 #include "ArgumentCoders.h" 32 #include "WebCoreArgumentCoders.h" 33 34 #if PLATFORM(COCOA) 35 #include "ArgumentCodersCF.h" 36 #endif 37 38 namespace WebKit { 39 40 WebAuthnProcessCreationParameters::WebAuthnProcessCreationParameters() = default; 41 42 void WebAuthnProcessCreationParameters::encode(IPC::Encoder& encoder) const 29 43 { 30 @autoreleasepool { 31 WTFLogAlways("com.apple.webkit.WebAuthenticationAgent started."); 32 } 44 } 33 45 34 [[NSRunLoop mainRunLoop] run]; 46 bool WebAuthnProcessCreationParameters::decode(IPC::Decoder& decoder, WebAuthnProcessCreationParameters& result) 47 { 48 return true; 49 } 35 50 36 return 0; 37 } 51 } // namespace WebKit 52 53 #endif // ENABLE(WEB_AUTHN) -
trunk/Source/WebKit/WebAuthnProcess/WebAuthnProcessCreationParameters.h
r268604 r268605 24 24 */ 25 25 26 # import "config.h"26 #pragma once 27 27 28 int main(int argc, const char* argv[]) 29 { 30 @autoreleasepool { 31 WTFLogAlways("com.apple.webkit.WebAuthenticationAgent started."); 32 } 28 #if ENABLE(WEB_AUTHN) 33 29 34 [[NSRunLoop mainRunLoop] run]; 30 namespace IPC { 31 class Decoder; 32 class Encoder; 33 } 35 34 36 return 0; 37 } 35 namespace WebKit { 36 37 struct WebAuthnProcessCreationParameters { 38 WebAuthnProcessCreationParameters(); 39 40 void encode(IPC::Encoder&) const; 41 static WARN_UNUSED_RETURN bool decode(IPC::Decoder&, WebAuthnProcessCreationParameters&); 42 }; 43 44 } // namespace WebKit 45 46 #endif // ENABLE(WEB_AUTHN) -
trunk/Source/WebKit/WebAuthnProcess/ios/WebAuthnProcessIOS.mm
r268604 r268605 25 25 26 26 #import "config.h" 27 #import "WebAuthnProcess.h" 27 28 28 int main(int argc, const char* argv[]) 29 #if ENABLE(WEB_AUTHN) && PLATFORM(IOS_FAMILY) 30 31 #import <WebCore/NotImplemented.h> 32 #import <WebCore/WebCoreThreadSystemInterface.h> 33 34 namespace WebKit { 35 using namespace WebCore; 36 37 void WebAuthnProcess::initializeProcess(const AuxiliaryProcessInitializationParameters&) 29 38 { 30 @autoreleasepool { 31 WTFLogAlways("com.apple.webkit.WebAuthenticationAgent started."); 32 } 39 InitWebCoreThreadSystemInterface(); 40 } 33 41 34 [[NSRunLoop mainRunLoop] run]; 42 void WebAuthnProcess::initializeProcessName(const AuxiliaryProcessInitializationParameters&) 43 { 44 notImplemented(); 45 } 35 46 36 return 0; 47 void WebAuthnProcess::initializeSandbox(const AuxiliaryProcessInitializationParameters&, SandboxInitializationParameters&) 48 { 37 49 } 50 51 } // namespace WebKit 52 53 #endif // ENABLE(WEB_AUTHN) && PLATFORM(IOS_FAMILY) -
trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj
r268577 r268605 15 15 ); 16 16 dependencies = ( 17 57 A9FF0C252C31D6006A2040/* PBXTargetDependency */,17 5742A2FA2535619D00B7BA14 /* PBXTargetDependency */, 18 18 BCA8D46815BCE0D6009DC1F1 /* PBXTargetDependency */, 19 19 372EBB492017E6CF00085064 /* PBXTargetDependency */, … … 1100 1100 572EBBDB2538F6B6000552B3 /* AppAttestInternalSoftLink.h in Headers */ = {isa = PBXBuildFile; fileRef = 572EBBD92538F6A1000552B3 /* AppAttestInternalSoftLink.h */; }; 1101 1101 572EBBDD25392181000552B3 /* AppAttestSPI.h in Headers */ = {isa = PBXBuildFile; fileRef = 572EBBDC25392181000552B3 /* AppAttestSPI.h */; }; 1102 572EBBBF2536A60A000552B3 /* WebAuthnConnectionToWebProcessMessageReceiver.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 572EBBBB2536A60A000552B3 /* WebAuthnConnectionToWebProcessMessageReceiver.cpp */; }; 1103 572EBBC02536A60A000552B3 /* WebAuthnConnectionToWebProcessMessages.h in Headers */ = {isa = PBXBuildFile; fileRef = 572EBBBC2536A60A000552B3 /* WebAuthnConnectionToWebProcessMessages.h */; }; 1104 572EBBC12536A60A000552B3 /* WebAuthnProcessMessageReceiver.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 572EBBBD2536A60A000552B3 /* WebAuthnProcessMessageReceiver.cpp */; }; 1105 572EBBC22536A60A000552B3 /* WebAuthnProcessMessages.h in Headers */ = {isa = PBXBuildFile; fileRef = 572EBBBE2536A60A000552B3 /* WebAuthnProcessMessages.h */; }; 1106 572EBBC42536AB84000552B3 /* com.apple.WebKit.WebAuthnProcess.sb in Resources */ = {isa = PBXBuildFile; fileRef = 572EBBC32536AB84000552B3 /* com.apple.WebKit.WebAuthnProcess.sb */; }; 1107 572EBBC92536AFD5000552B3 /* WebAuthnProcessProxy.h in Headers */ = {isa = PBXBuildFile; fileRef = 572EBBC62536AFD5000552B3 /* WebAuthnProcessProxy.h */; }; 1108 572EBBCC2536B04F000552B3 /* WebAuthnProcessConnectionInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 572EBBCB2536B04F000552B3 /* WebAuthnProcessConnectionInfo.h */; }; 1109 572EBBCF2536BB11000552B3 /* WebAuthnProcessProxyMessageReceiver.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 572EBBCD2536BB10000552B3 /* WebAuthnProcessProxyMessageReceiver.cpp */; }; 1110 572EBBD02536BB11000552B3 /* WebAuthnProcessProxyMessages.h in Headers */ = {isa = PBXBuildFile; fileRef = 572EBBCE2536BB10000552B3 /* WebAuthnProcessProxyMessages.h */; }; 1111 572EBBD52536C885000552B3 /* WebAuthnProcessConnection.h in Headers */ = {isa = PBXBuildFile; fileRef = 572EBBD22536C885000552B3 /* WebAuthnProcessConnection.h */; }; 1112 572EBBD72537EBAE000552B3 /* ExtraPrivateSymbolsForTAPI.h in Headers */ = {isa = PBXBuildFile; fileRef = ECA680D31E6904B500731D20 /* ExtraPrivateSymbolsForTAPI.h */; }; 1102 1113 572FD44322265CE200A1ECC3 /* WebViewDidMoveToWindowObserver.h in Headers */ = {isa = PBXBuildFile; fileRef = 572FD44122265CE200A1ECC3 /* WebViewDidMoveToWindowObserver.h */; }; 1103 1114 574217922400E286002B303D /* LocalAuthenticationSPI.h in Headers */ = {isa = PBXBuildFile; fileRef = 574217912400E098002B303D /* LocalAuthenticationSPI.h */; }; 1115 5742A2EB2535613F00B7BA14 /* AuxiliaryProcessMain.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5CE9120F2293C25F005BEC78 /* AuxiliaryProcessMain.cpp */; }; 1116 5742A2EC2535613F00B7BA14 /* XPCServiceMain.mm in Sources */ = {isa = PBXBuildFile; fileRef = BC82839616B47EC400A278FE /* XPCServiceMain.mm */; }; 1117 5742A2EE2535613F00B7BA14 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BC3DE46815A91763008D26FC /* Foundation.framework */; }; 1118 5742A2EF2535613F00B7BA14 /* WebKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8DC2EF5B0486A6940098B216 /* WebKit.framework */; }; 1119 5742A30825358A0400B7BA14 /* WebAuthnProcessCreationParameters.h in Headers */ = {isa = PBXBuildFile; fileRef = 5742A30625358A0400B7BA14 /* WebAuthnProcessCreationParameters.h */; }; 1120 5742A30D25358EFD00B7BA14 /* WebAuthnConnectionToWebProcess.h in Headers */ = {isa = PBXBuildFile; fileRef = 5742A30A25358EFD00B7BA14 /* WebAuthnConnectionToWebProcess.h */; }; 1121 5742A318253648E500B7BA14 /* WebAuthnProcess.h in Headers */ = {isa = PBXBuildFile; fileRef = 5742A315253648E400B7BA14 /* WebAuthnProcess.h */; }; 1104 1122 574728D123456E98001700AF /* _WKWebAuthenticationPanel.h in Headers */ = {isa = PBXBuildFile; fileRef = 574728CF23456E98001700AF /* _WKWebAuthenticationPanel.h */; settings = {ATTRIBUTES = (Private, ); }; }; 1105 1123 574728D4234570AE001700AF /* _WKWebAuthenticationPanelInternal.h in Headers */ = {isa = PBXBuildFile; fileRef = 574728D3234570AE001700AF /* _WKWebAuthenticationPanelInternal.h */; }; … … 1109 1127 575B1BB923CE9C0B0020639A /* SimulatedInputDispatcher.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 995226D5207D184600F78420 /* SimulatedInputDispatcher.cpp */; }; 1110 1128 575B1BBA23CE9C130020639A /* WebAutomationSession.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9955A6EA1C7980BB00EB6A93 /* WebAutomationSession.cpp */; }; 1111 576BCD5E252FD22D00CE9F87 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BC3DE46815A91763008D26FC /* Foundation.framework */; };1112 1129 576CA9D722B862180030143C /* SOAuthorizationNSURLExtras.h in Headers */ = {isa = PBXBuildFile; fileRef = 57FD317322B35148008D0E8B /* SOAuthorizationNSURLExtras.h */; settings = {ATTRIBUTES = (Private, ); }; }; 1113 1130 5772F206217DBD6A0056BF2C /* HidService.h in Headers */ = {isa = PBXBuildFile; fileRef = 5772F204217DBD6A0056BF2C /* HidService.h */; }; … … 1118 1135 579F1BF923C80EC600C7D4B4 /* _WKWebAuthenticationAssertionResponseInternal.h in Headers */ = {isa = PBXBuildFile; fileRef = 579F1BF823C80EC600C7D4B4 /* _WKWebAuthenticationAssertionResponseInternal.h */; }; 1119 1136 579F1BFC23C811CF00C7D4B4 /* APIWebAuthenticationAssertionResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = 579F1BFA23C811CF00C7D4B4 /* APIWebAuthenticationAssertionResponse.h */; }; 1120 57A9FF09252BEAF0006A2040 /* main.mm in Sources */ = {isa = PBXBuildFile; fileRef = 57A9FF08252BEAF0006A2040 /* main.mm */; };1121 57A9FF1D252C6CE6006A2040 /* libWTF.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 57A9FF15252C6AEF006A2040 /* libWTF.a */; };1122 1137 57AC8F50217FEED90055438C /* HidConnection.h in Headers */ = {isa = PBXBuildFile; fileRef = 57AC8F4E217FEED90055438C /* HidConnection.h */; }; 1123 1138 57B4B46020B504AC00D4AD79 /* ClientCertificateAuthenticationXPCConstants.h in Headers */ = {isa = PBXBuildFile; fileRef = 57B4B45E20B504AB00D4AD79 /* ClientCertificateAuthenticationXPCConstants.h */; }; … … 1129 1144 57BBEA6D22BC0BFE00273995 /* SOAuthorizationLoadPolicy.h in Headers */ = {isa = PBXBuildFile; fileRef = 57BBEA6C22BC0BFE00273995 /* SOAuthorizationLoadPolicy.h */; }; 1130 1145 57C6244B234679A400383FE7 /* WebAuthenticationFlags.h in Headers */ = {isa = PBXBuildFile; fileRef = 57C6244A234679A400383FE7 /* WebAuthenticationFlags.h */; }; 1131 57DCED6F2142EE630016B847 /* WebAuthenticatorCoordinatorMessages.h in Headers */ = {isa = PBXBuildFile; fileRef = 57DCED6A2142EAE20016B847 /* WebAuthenticatorCoordinatorMessages.h */; };1132 1146 57DCED702142EE680016B847 /* WebAuthenticatorCoordinatorProxyMessageReceiver.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 57DCED6C2142EAF90016B847 /* WebAuthenticatorCoordinatorProxyMessageReceiver.cpp */; }; 1133 1147 57DCED712142EE6C0016B847 /* WebAuthenticatorCoordinatorProxyMessages.h in Headers */ = {isa = PBXBuildFile; fileRef = 57DCED6D2142EAFA0016B847 /* WebAuthenticatorCoordinatorProxyMessages.h */; }; … … 1978 1992 remoteInfo = "Derived Sources"; 1979 1993 }; 1980 57 A9FF0B252C31D6006A2040/* PBXContainerItemProxy */ = {1994 5742A2E72535613F00B7BA14 /* PBXContainerItemProxy */ = { 1981 1995 isa = PBXContainerItemProxy; 1982 1996 containerPortal = 0867D690FE84028FC02AAC07 /* Project object */; 1983 1997 proxyType = 1; 1984 remoteGlobalIDString = 57A9FEFB252BD8AA006A2040; 1985 remoteInfo = WebAuthenticationAgent; 1998 remoteGlobalIDString = E1AC2E2720F7B94C00B0897D; 1999 remoteInfo = "Unlock Keychain"; 2000 }; 2001 5742A2E92535613F00B7BA14 /* PBXContainerItemProxy */ = { 2002 isa = PBXContainerItemProxy; 2003 containerPortal = 0867D690FE84028FC02AAC07 /* Project object */; 2004 proxyType = 1; 2005 remoteGlobalIDString = 8DC2EF4F0486A6940098B216; 2006 remoteInfo = WebKit; 2007 }; 2008 5742A2F92535619D00B7BA14 /* PBXContainerItemProxy */ = { 2009 isa = PBXContainerItemProxy; 2010 containerPortal = 0867D690FE84028FC02AAC07 /* Project object */; 2011 proxyType = 1; 2012 remoteGlobalIDString = 5742A2E52535613F00B7BA14; 2013 remoteInfo = WebAuthentication; 1986 2014 }; 1987 2015 BC8283D416B4C01F00A278FE /* PBXContainerItemProxy */ = { … … 2096 2124 name = "Copy Shims"; 2097 2125 runOnlyForDeploymentPostprocessing = 0; 2098 };2099 57A9FEFA252BD8AA006A2040 /* CopyFiles */ = {2100 isa = PBXCopyFilesBuildPhase;2101 buildActionMask = 2147483647;2102 dstPath = /usr/share/man/man1/;2103 dstSubfolderSpec = 0;2104 files = (2105 );2106 runOnlyForDeploymentPostprocessing = 1;2107 2126 }; 2108 2127 7CB16FEE1724BA05007A0A95 /* Copy Plug-in Sandbox Profiles */ = { … … 3647 3666 510523721C73D37B007993CB /* WebIDBConnectionToServerMessageReceiver.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = WebIDBConnectionToServerMessageReceiver.cpp; path = DerivedSources/WebKit2/WebIDBConnectionToServerMessageReceiver.cpp; sourceTree = BUILT_PRODUCTS_DIR; }; 3648 3667 510523731C73D37B007993CB /* WebIDBConnectionToServerMessages.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = WebIDBConnectionToServerMessages.h; path = DerivedSources/WebKit2/WebIDBConnectionToServerMessages.h; sourceTree = BUILT_PRODUCTS_DIR; }; 3649 510523771C73DA70007993CB /* WebIDBConnectionToClientMessageReceiver.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = WebIDBConnectionToClientMessageReceiver.cpp; path = DerivedSources/WebKit2/WebIDBConnectionToClientMessageReceiver.cpp; sourceTree = BUILT_PRODUCTS_DIR; };3650 510523781C73DA70007993CB /* WebIDBConnectionToClientMessages.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = WebIDBConnectionToClientMessages.h; path = DerivedSources/WebKit2/WebIDBConnectionToClientMessages.h; sourceTree = BUILT_PRODUCTS_DIR; };3651 3668 5105B0D4162F7A7A00E27709 /* NetworkProcessConnection.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = NetworkProcessConnection.cpp; path = Network/NetworkProcessConnection.cpp; sourceTree = "<group>"; }; 3652 3669 5105B0D5162F7A7A00E27709 /* NetworkProcessConnection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = NetworkProcessConnection.h; path = Network/NetworkProcessConnection.h; sourceTree = "<group>"; }; … … 3669 3686 5110AE0A133C16CB0072717A /* WKIconDatabase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WKIconDatabase.cpp; sourceTree = "<group>"; }; 3670 3687 5110AE0B133C16CB0072717A /* WKIconDatabase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKIconDatabase.h; sourceTree = "<group>"; }; 3671 5118E9A21F295963003EF9F5 /* StorageProcessProxyMessages.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = StorageProcessProxyMessages.h; path = DerivedSources/WebKit2/StorageProcessProxyMessages.h; sourceTree = BUILT_PRODUCTS_DIR; };3672 5118E9A31F295963003EF9F5 /* StorageToWebProcessConnectionMessageReceiver.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = StorageToWebProcessConnectionMessageReceiver.cpp; path = DerivedSources/WebKit2/StorageToWebProcessConnectionMessageReceiver.cpp; sourceTree = BUILT_PRODUCTS_DIR; };3673 5118E9A41F295963003EF9F5 /* StorageToWebProcessConnectionMessages.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = StorageToWebProcessConnectionMessages.h; path = DerivedSources/WebKit2/StorageToWebProcessConnectionMessages.h; sourceTree = BUILT_PRODUCTS_DIR; };3674 5118E9A51F295963003EF9F5 /* StorageProcessMessageReceiver.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = StorageProcessMessageReceiver.cpp; path = DerivedSources/WebKit2/StorageProcessMessageReceiver.cpp; sourceTree = BUILT_PRODUCTS_DIR; };3675 5118E9A61F295963003EF9F5 /* StorageProcessMessages.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = StorageProcessMessages.h; path = DerivedSources/WebKit2/StorageProcessMessages.h; sourceTree = BUILT_PRODUCTS_DIR; };3676 5118E9A71F295963003EF9F5 /* StorageProcessProxyMessageReceiver.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = StorageProcessProxyMessageReceiver.cpp; path = DerivedSources/WebKit2/StorageProcessProxyMessageReceiver.cpp; sourceTree = BUILT_PRODUCTS_DIR; };3677 3688 511F7D3F1EB1BCEE00E47B83 /* WebsiteDataStoreParameters.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebsiteDataStoreParameters.cpp; sourceTree = "<group>"; }; 3678 3689 511F7D401EB1BCEE00E47B83 /* WebsiteDataStoreParameters.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebsiteDataStoreParameters.h; sourceTree = "<group>"; }; … … 3922 3933 572EBBD92538F6A1000552B3 /* AppAttestInternalSoftLink.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppAttestInternalSoftLink.h; sourceTree = "<group>"; }; 3923 3934 572EBBDC25392181000552B3 /* AppAttestSPI.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppAttestSPI.h; sourceTree = "<group>"; }; 3935 572EBBB92536A06E000552B3 /* Info-iOS.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist; name = "Info-iOS.plist"; path = "WebAuthnProcess/EntryPoint/Cocoa/XPCService/WebAuthnService/Info-iOS.plist"; sourceTree = SOURCE_ROOT; }; 3936 572EBBBA2536A06E000552B3 /* Info-OSX.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist; name = "Info-OSX.plist"; path = "WebAuthnProcess/EntryPoint/Cocoa/XPCService/WebAuthnService/Info-OSX.plist"; sourceTree = SOURCE_ROOT; }; 3937 572EBBBB2536A60A000552B3 /* WebAuthnConnectionToWebProcessMessageReceiver.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebAuthnConnectionToWebProcessMessageReceiver.cpp; sourceTree = "<group>"; }; 3938 572EBBBC2536A60A000552B3 /* WebAuthnConnectionToWebProcessMessages.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebAuthnConnectionToWebProcessMessages.h; sourceTree = "<group>"; }; 3939 572EBBBD2536A60A000552B3 /* WebAuthnProcessMessageReceiver.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebAuthnProcessMessageReceiver.cpp; sourceTree = "<group>"; }; 3940 572EBBBE2536A60A000552B3 /* WebAuthnProcessMessages.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebAuthnProcessMessages.h; sourceTree = "<group>"; }; 3941 572EBBC32536AB84000552B3 /* com.apple.WebKit.WebAuthnProcess.sb */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = com.apple.WebKit.WebAuthnProcess.sb; sourceTree = "<group>"; }; 3942 572EBBC52536AFD5000552B3 /* WebAuthnProcessProxy.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebAuthnProcessProxy.cpp; sourceTree = "<group>"; }; 3943 572EBBC62536AFD5000552B3 /* WebAuthnProcessProxy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebAuthnProcessProxy.h; sourceTree = "<group>"; }; 3944 572EBBC72536AFD5000552B3 /* WebAuthnProcessProxy.messages.in */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = WebAuthnProcessProxy.messages.in; sourceTree = "<group>"; }; 3945 572EBBCB2536B04F000552B3 /* WebAuthnProcessConnectionInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebAuthnProcessConnectionInfo.h; sourceTree = "<group>"; }; 3946 572EBBCD2536BB10000552B3 /* WebAuthnProcessProxyMessageReceiver.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebAuthnProcessProxyMessageReceiver.cpp; sourceTree = "<group>"; }; 3947 572EBBCE2536BB10000552B3 /* WebAuthnProcessProxyMessages.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebAuthnProcessProxyMessages.h; sourceTree = "<group>"; }; 3948 572EBBD12536C885000552B3 /* WebAuthnProcessConnection.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebAuthnProcessConnection.cpp; sourceTree = "<group>"; }; 3949 572EBBD22536C885000552B3 /* WebAuthnProcessConnection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebAuthnProcessConnection.h; sourceTree = "<group>"; }; 3950 572EBBD32536C885000552B3 /* WebAuthnProcessConnection.messages.in */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = WebAuthnProcessConnection.messages.in; sourceTree = "<group>"; }; 3924 3951 572FD44122265CE200A1ECC3 /* WebViewDidMoveToWindowObserver.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = WebViewDidMoveToWindowObserver.h; sourceTree = "<group>"; }; 3925 3952 574217912400E098002B303D /* LocalAuthenticationSPI.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = LocalAuthenticationSPI.h; sourceTree = "<group>"; }; 3953 5742A2F72535613F00B7BA14 /* com.apple.WebKit.WebAuthn.xpc */ = {isa = PBXFileReference; explicitFileType = "wrapper.xpc-service"; includeInIndex = 0; path = com.apple.WebKit.WebAuthn.xpc; sourceTree = BUILT_PRODUCTS_DIR; }; 3954 5742A30625358A0400B7BA14 /* WebAuthnProcessCreationParameters.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebAuthnProcessCreationParameters.h; sourceTree = "<group>"; }; 3955 5742A30725358A0400B7BA14 /* WebAuthnProcessCreationParameters.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebAuthnProcessCreationParameters.cpp; sourceTree = "<group>"; }; 3956 5742A30A25358EFD00B7BA14 /* WebAuthnConnectionToWebProcess.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebAuthnConnectionToWebProcess.h; sourceTree = "<group>"; }; 3957 5742A30B25358EFD00B7BA14 /* WebAuthnConnectionToWebProcess.messages.in */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = WebAuthnConnectionToWebProcess.messages.in; sourceTree = "<group>"; }; 3958 5742A30C25358EFD00B7BA14 /* WebAuthnConnectionToWebProcess.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebAuthnConnectionToWebProcess.cpp; sourceTree = "<group>"; }; 3959 5742A313253648E400B7BA14 /* WebAuthnProcess.messages.in */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = WebAuthnProcess.messages.in; sourceTree = "<group>"; }; 3960 5742A314253648E400B7BA14 /* WebAuthnProcess.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebAuthnProcess.cpp; sourceTree = "<group>"; }; 3961 5742A315253648E400B7BA14 /* WebAuthnProcess.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebAuthnProcess.h; sourceTree = "<group>"; }; 3962 5742A31A253675E900B7BA14 /* WebAuthnProcessIOS.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = WebAuthnProcessIOS.mm; sourceTree = "<group>"; }; 3963 5742A31C253675F600B7BA14 /* WebAuthnProcessMac.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = WebAuthnProcessMac.mm; sourceTree = "<group>"; }; 3964 5742A31D253675F600B7BA14 /* com.apple.WebKit.WebAuthnProcess.sb.in */ = {isa = PBXFileReference; lastKnownFileType = text; path = com.apple.WebKit.WebAuthnProcess.sb.in; sourceTree = "<group>"; }; 3965 5742A31E2536949300B7BA14 /* WebAuthnServiceEntryPoint.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = WebAuthnServiceEntryPoint.mm; sourceTree = "<group>"; }; 3926 3966 574728CF23456E98001700AF /* _WKWebAuthenticationPanel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = _WKWebAuthenticationPanel.h; sourceTree = "<group>"; }; 3927 3967 574728D023456E98001700AF /* _WKWebAuthenticationPanel.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = _WKWebAuthenticationPanel.mm; sourceTree = "<group>"; }; … … 3953 3993 579F1BFA23C811CF00C7D4B4 /* APIWebAuthenticationAssertionResponse.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = APIWebAuthenticationAssertionResponse.h; sourceTree = "<group>"; }; 3954 3994 579F1BFB23C811CF00C7D4B4 /* APIWebAuthenticationAssertionResponse.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = APIWebAuthenticationAssertionResponse.cpp; sourceTree = "<group>"; }; 3955 57A9FEFC252BD8AA006A2040 /* com.apple.WebKit.WebAuthenticationAgent.Development */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = com.apple.WebKit.WebAuthenticationAgent.Development; sourceTree = BUILT_PRODUCTS_DIR; }; 3956 57A9FF07252BE6E0006A2040 /* WebAuthenticationAgent.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = WebAuthenticationAgent.xcconfig; sourceTree = "<group>"; }; 3957 57A9FF08252BEAF0006A2040 /* main.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = main.mm; path = Daemons/WebAuthenticationAgent/main.mm; sourceTree = SOURCE_ROOT; }; 3958 57A9FF0A252BF5C3006A2040 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; }; 3959 57A9FF0D252C397A006A2040 /* com.apple.webkit.WebAuthenticationAgent.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = com.apple.webkit.WebAuthenticationAgent.plist; sourceTree = "<group>"; }; 3960 57A9FF0F252C5D9D006A2040 /* WebAuthenticationAgent.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = WebAuthenticationAgent.entitlements; sourceTree = "<group>"; }; 3995 57A9FF07252BE6E0006A2040 /* WebAuthnService.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = WebAuthnService.xcconfig; sourceTree = "<group>"; }; 3961 3996 57A9FF15252C6AEF006A2040 /* libWTF.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; path = libWTF.a; sourceTree = BUILT_PRODUCTS_DIR; }; 3962 3997 57AC8F4E217FEED90055438C /* HidConnection.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = HidConnection.h; sourceTree = "<group>"; }; … … 3976 4011 57C3E8AC242490D5001E2209 /* WebAuthenticationRequestData.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = WebAuthenticationRequestData.cpp; sourceTree = "<group>"; }; 3977 4012 57C6244A234679A400383FE7 /* WebAuthenticationFlags.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = WebAuthenticationFlags.h; sourceTree = "<group>"; }; 3978 57DCED6A2142EAE20016B847 /* WebAuthenticatorCoordinatorMessages.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = WebAuthenticatorCoordinatorMessages.h; path = DerivedSources/WebKit2/WebAuthenticatorCoordinatorMessages.h; sourceTree = BUILT_PRODUCTS_DIR; };3979 57DCED6B2142EAE20016B847 /* WebAuthenticatorCoordinatorMessageReceiver.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = WebAuthenticatorCoordinatorMessageReceiver.cpp; path = DerivedSources/WebKit2/WebAuthenticatorCoordinatorMessageReceiver.cpp; sourceTree = BUILT_PRODUCTS_DIR; };3980 4013 57DCED6C2142EAF90016B847 /* WebAuthenticatorCoordinatorProxyMessageReceiver.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = WebAuthenticatorCoordinatorProxyMessageReceiver.cpp; path = DerivedSources/WebKit2/WebAuthenticatorCoordinatorProxyMessageReceiver.cpp; sourceTree = BUILT_PRODUCTS_DIR; }; 3981 4014 57DCED6D2142EAFA0016B847 /* WebAuthenticatorCoordinatorProxyMessages.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = WebAuthenticatorCoordinatorProxyMessages.h; path = DerivedSources/WebKit2/WebAuthenticatorCoordinatorProxyMessages.h; sourceTree = BUILT_PRODUCTS_DIR; }; … … 5305 5338 DF84CEE3249AA21F009096F6 /* WKPDFHUDView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = WKPDFHUDView.h; path = PDF/WKPDFHUDView.h; sourceTree = "<group>"; }; 5306 5339 E105FE5318D7B9DE008F57A8 /* EditingRange.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EditingRange.h; sourceTree = "<group>"; }; 5307 E115C715190F8A2500ECC516 /* com.apple.WebKit.Storage.sb */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = com.apple.WebKit.Storage.sb; path = DerivedSources/WebKit2/com.apple.WebKit.Storage.sb; sourceTree = BUILT_PRODUCTS_DIR; };5308 5340 E133FD891423DD7F00FC7BFB /* WebKit.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; name = WebKit.icns; path = Resources/WebKit.icns; sourceTree = "<group>"; }; 5309 5341 E14A954716E016A40068DE82 /* NetworkProcessPlatformStrategies.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = NetworkProcessPlatformStrategies.cpp; sourceTree = "<group>"; }; … … 5490 5522 runOnlyForDeploymentPostprocessing = 0; 5491 5523 }; 5492 57 A9FEF9252BD8AA006A2040/* Frameworks */ = {5524 5742A2ED2535613F00B7BA14 /* Frameworks */ = { 5493 5525 isa = PBXFrameworksBuildPhase; 5494 5526 buildActionMask = 2147483647; 5495 5527 files = ( 5496 57 6BCD5E252FD22D00CE9F87/* Foundation.framework in Frameworks */,5497 57 A9FF1D252C6CE6006A2040 /* libWTF.ain Frameworks */,5528 5742A2EE2535613F00B7BA14 /* Foundation.framework in Frameworks */, 5529 5742A2EF2535613F00B7BA14 /* WebKit.framework in Frameworks */, 5498 5530 ); 5499 5531 runOnlyForDeploymentPostprocessing = 0; … … 5547 5579 BC8283B116B4BF7700A278FE /* com.apple.WebKit.Networking.xpc */, 5548 5580 BC82841F16B4FDF600A278FE /* com.apple.WebKit.Plugin.64.xpc */, 5549 57 A9FEFC252BD8AA006A2040 /* com.apple.WebKit.WebAuthenticationAgent.Development*/,5581 5742A2F72535613F00B7BA14 /* com.apple.WebKit.WebAuthn.xpc */, 5550 5582 372EBB462017E64300085064 /* com.apple.WebKit.WebContent.Development.xpc */, 5551 5583 BC3DE46615A91763008D26FC /* com.apple.WebKit.WebContent.xpc */, … … 5699 5731 1A1D2117191D996C0001619F /* MigrateHeadersFromWebKitLegacy.make */, 5700 5732 1A1D2116191D995C0001619F /* postprocess-framework-headers.sh */, 5701 57A9FEEF252BB70C006A2040 /* Daemons */,5702 5733 BC2E6E74114196F000A63B1E /* Platform */, 5703 5734 1AADDF4B10D82AF000D3D63D /* Shared */, … … 5707 5738 1A0EC6B0124BBD36007EF4A5 /* PluginProcess */, 5708 5739 2D9FB1FF2375209D0049F936 /* GPUProcess */, 5740 5742A2FF2535758000B7BA14 /* WebAuthnProcess */, 5709 5741 C0CE729D1247E71D00BC0EC4 /* Derived Sources */, 5710 5742 1DEC97AB246B6865007C83F4 /* FeatureFlags */, … … 5908 5940 5183B3931379F85C00E8754E /* Shim.xcconfig */, 5909 5941 1A4F976E100E7B6600637A18 /* Version.xcconfig */, 5910 57A9FF07252BE6E0006A2040 /* WebAuth enticationAgent.xcconfig */,5942 57A9FF07252BE6E0006A2040 /* WebAuthnService.xcconfig */, 5911 5943 372EBB4A2017E76000085064 /* WebContentService.Development.xcconfig */, 5912 5944 BCACC40E16B0B8A800B6E092 /* WebContentService.xcconfig */, … … 8146 8178 sourceTree = "<group>"; 8147 8179 }; 8180 5742A2FF2535758000B7BA14 /* WebAuthnProcess */ = { 8181 isa = PBXGroup; 8182 children = ( 8183 5742A3002535758000B7BA14 /* EntryPoint */, 8184 5742A319253675E900B7BA14 /* ios */, 8185 5742A31B253675F600B7BA14 /* mac */, 8186 5742A30C25358EFD00B7BA14 /* WebAuthnConnectionToWebProcess.cpp */, 8187 5742A30A25358EFD00B7BA14 /* WebAuthnConnectionToWebProcess.h */, 8188 5742A30B25358EFD00B7BA14 /* WebAuthnConnectionToWebProcess.messages.in */, 8189 5742A314253648E400B7BA14 /* WebAuthnProcess.cpp */, 8190 5742A315253648E400B7BA14 /* WebAuthnProcess.h */, 8191 5742A313253648E400B7BA14 /* WebAuthnProcess.messages.in */, 8192 5742A30725358A0400B7BA14 /* WebAuthnProcessCreationParameters.cpp */, 8193 5742A30625358A0400B7BA14 /* WebAuthnProcessCreationParameters.h */, 8194 ); 8195 path = WebAuthnProcess; 8196 sourceTree = "<group>"; 8197 }; 8198 5742A3002535758000B7BA14 /* EntryPoint */ = { 8199 isa = PBXGroup; 8200 children = ( 8201 5742A3012535758000B7BA14 /* Cocoa */, 8202 ); 8203 path = EntryPoint; 8204 sourceTree = "<group>"; 8205 }; 8206 5742A3012535758000B7BA14 /* Cocoa */ = { 8207 isa = PBXGroup; 8208 children = ( 8209 5742A3022535758000B7BA14 /* XPCService */, 8210 ); 8211 path = Cocoa; 8212 sourceTree = "<group>"; 8213 }; 8214 5742A3022535758000B7BA14 /* XPCService */ = { 8215 isa = PBXGroup; 8216 children = ( 8217 5742A3032535758000B7BA14 /* WebAuthnService */, 8218 5742A31E2536949300B7BA14 /* WebAuthnServiceEntryPoint.mm */, 8219 ); 8220 path = XPCService; 8221 sourceTree = "<group>"; 8222 }; 8223 5742A3032535758000B7BA14 /* WebAuthnService */ = { 8224 isa = PBXGroup; 8225 children = ( 8226 572EBBB92536A06E000552B3 /* Info-iOS.plist */, 8227 572EBBBA2536A06E000552B3 /* Info-OSX.plist */, 8228 ); 8229 path = WebAuthnService; 8230 sourceTree = "<group>"; 8231 }; 8232 5742A319253675E900B7BA14 /* ios */ = { 8233 isa = PBXGroup; 8234 children = ( 8235 5742A31A253675E900B7BA14 /* WebAuthnProcessIOS.mm */, 8236 ); 8237 path = ios; 8238 sourceTree = "<group>"; 8239 }; 8240 5742A31B253675F600B7BA14 /* mac */ = { 8241 isa = PBXGroup; 8242 children = ( 8243 5742A31D253675F600B7BA14 /* com.apple.WebKit.WebAuthnProcess.sb.in */, 8244 5742A31C253675F600B7BA14 /* WebAuthnProcessMac.mm */, 8245 ); 8246 path = mac; 8247 sourceTree = "<group>"; 8248 }; 8148 8249 575075A620AB75AB00693EA9 /* mac */ = { 8149 8250 isa = PBXGroup; … … 8189 8290 5760828C2029854200116678 /* WebAuthenticatorCoordinator.cpp */, 8190 8291 5760828B2029854200116678 /* WebAuthenticatorCoordinator.h */, 8292 572EBBD12536C885000552B3 /* WebAuthnProcessConnection.cpp */, 8293 572EBBD22536C885000552B3 /* WebAuthnProcessConnection.h */, 8294 572EBBD32536C885000552B3 /* WebAuthnProcessConnection.messages.in */, 8295 572EBBCB2536B04F000552B3 /* WebAuthnProcessConnectionInfo.h */, 8191 8296 ); 8192 8297 path = WebAuthentication; … … 8211 8316 57608295202BD8BA00116678 /* WebAuthenticatorCoordinatorProxy.h */, 8212 8317 57608299202BDAE200116678 /* WebAuthenticatorCoordinatorProxy.messages.in */, 8318 572EBBC52536AFD5000552B3 /* WebAuthnProcessProxy.cpp */, 8319 572EBBC62536AFD5000552B3 /* WebAuthnProcessProxy.h */, 8320 572EBBC72536AFD5000552B3 /* WebAuthnProcessProxy.messages.in */, 8213 8321 ); 8214 8322 path = WebAuthentication; 8215 sourceTree = "<group>";8216 };8217 57A9FEEF252BB70C006A2040 /* Daemons */ = {8218 isa = PBXGroup;8219 children = (8220 57A9FEF0252BB740006A2040 /* WebAuthenticationAgent */,8221 );8222 path = Daemons;8223 sourceTree = "<group>";8224 };8225 57A9FEF0252BB740006A2040 /* WebAuthenticationAgent */ = {8226 isa = PBXGroup;8227 children = (8228 57A9FF0D252C397A006A2040 /* com.apple.webkit.WebAuthenticationAgent.plist */,8229 57A9FF0A252BF5C3006A2040 /* Info.plist */,8230 57A9FF08252BEAF0006A2040 /* main.mm */,8231 57A9FF0F252C5D9D006A2040 /* WebAuthenticationAgent.entitlements */,8232 );8233 path = WebAuthenticationAgent;8234 8323 sourceTree = "<group>"; 8235 8324 }; … … 10094 10183 E17AE2C216B9C63A001C42F1 /* com.apple.WebKit.NetworkProcess.sb */, 10095 10184 7A1506721DD56298001F4B58 /* com.apple.WebKit.plugin-common.sb */, 10096 E115C715190F8A2500ECC516 /* com.apple.WebKit.Storage.sb */,10185 572EBBC32536AB84000552B3 /* com.apple.WebKit.WebAuthnProcess.sb */, 10097 10186 E1967E37150AB5E200C73169 /* com.apple.WebProcess.sb */, 10098 10187 1AB7D6171288B9D900CFD08C /* DownloadProxyMessageReceiver.cpp */, … … 10209 10298 9368EEDC2303A8D800BDB11A /* StorageManagerSetMessageReceiver.cpp */, 10210 10299 9368EEDD2303A8D800BDB11A /* StorageManagerSetMessages.h */, 10211 5118E9A51F295963003EF9F5 /* StorageProcessMessageReceiver.cpp */,10212 5118E9A61F295963003EF9F5 /* StorageProcessMessages.h */,10213 5118E9A71F295963003EF9F5 /* StorageProcessProxyMessageReceiver.cpp */,10214 5118E9A21F295963003EF9F5 /* StorageProcessProxyMessages.h */,10215 5118E9A31F295963003EF9F5 /* StorageToWebProcessConnectionMessageReceiver.cpp */,10216 5118E9A41F295963003EF9F5 /* StorageToWebProcessConnectionMessages.h */,10217 10300 CD491B0B1E732E4D00009066 /* UserMediaCaptureManagerMessageReceiver.cpp */, 10218 10301 CD491B0C1E732E4D00009066 /* UserMediaCaptureManagerMessages.h */, … … 10233 10316 1A8E7D3A18C15149005A702A /* VisitedLinkTableControllerMessageReceiver.cpp */, 10234 10317 1A8E7D3B18C15149005A702A /* VisitedLinkTableControllerMessages.h */, 10235 57DCED6B2142EAE20016B847 /* WebAuthenticatorCoordinatorMessageReceiver.cpp */,10236 57DCED6A2142EAE20016B847 /* WebAuthenticatorCoordinatorMessages.h */,10237 10318 57DCED6C2142EAF90016B847 /* WebAuthenticatorCoordinatorProxyMessageReceiver.cpp */, 10238 10319 57DCED6D2142EAFA0016B847 /* WebAuthenticatorCoordinatorProxyMessages.h */, 10320 572EBBBB2536A60A000552B3 /* WebAuthnConnectionToWebProcessMessageReceiver.cpp */, 10321 572EBBBC2536A60A000552B3 /* WebAuthnConnectionToWebProcessMessages.h */, 10322 572EBBBD2536A60A000552B3 /* WebAuthnProcessMessageReceiver.cpp */, 10323 572EBBBE2536A60A000552B3 /* WebAuthnProcessMessages.h */, 10324 572EBBCD2536BB10000552B3 /* WebAuthnProcessProxyMessageReceiver.cpp */, 10325 572EBBCE2536BB10000552B3 /* WebAuthnProcessProxyMessages.h */, 10239 10326 1C0A19551C90068F00FE0EBB /* WebAutomationSessionMessageReceiver.cpp */, 10240 10327 1C0A19561C90068F00FE0EBB /* WebAutomationSessionMessages.h */, … … 10260 10347 BC0E618012D6CB1D0012A72A /* WebGeolocationManagerProxyMessageReceiver.cpp */, 10261 10348 BC0E618112D6CB1D0012A72A /* WebGeolocationManagerProxyMessages.h */, 10262 510523771C73DA70007993CB /* WebIDBConnectionToClientMessageReceiver.cpp */,10263 510523781C73DA70007993CB /* WebIDBConnectionToClientMessages.h */,10264 10349 510523721C73D37B007993CB /* WebIDBConnectionToServerMessageReceiver.cpp */, 10265 10350 510523731C73D37B007993CB /* WebIDBConnectionToServerMessages.h */, … … 10916 11001 51B15A8513843A3900321AD8 /* EnvironmentUtilities.h in Headers */, 10917 11002 1AA575FB1496B52600A4EE06 /* EventDispatcher.h in Headers */, 11003 572EBBD72537EBAE000552B3 /* ExtraPrivateSymbolsForTAPI.h in Headers */, 10918 11004 57B8264823050C5100B72EB0 /* FidoService.h in Headers */, 10919 11005 00B9661A18E25AE100CE1F88 /* FindClient.h in Headers */, … … 11302 11388 577FF7852346ECAA004EDFB9 /* WebAuthenticationPanelClient.h in Headers */, 11303 11389 57DCEDB2214C604C0016B847 /* WebAuthenticationRequestData.h in Headers */, 11304 57DCED6F2142EE630016B847 /* WebAuthenticatorCoordinatorMessages.h in Headers */,11305 11390 57DCEDB3214C60530016B847 /* WebAuthenticatorCoordinatorProxy.h in Headers */, 11306 11391 57DCED712142EE6C0016B847 /* WebAuthenticatorCoordinatorProxyMessages.h in Headers */, 11392 5742A30D25358EFD00B7BA14 /* WebAuthnConnectionToWebProcess.h in Headers */, 11393 572EBBC02536A60A000552B3 /* WebAuthnConnectionToWebProcessMessages.h in Headers */, 11394 5742A318253648E500B7BA14 /* WebAuthnProcess.h in Headers */, 11395 572EBBD52536C885000552B3 /* WebAuthnProcessConnection.h in Headers */, 11396 572EBBCC2536B04F000552B3 /* WebAuthnProcessConnectionInfo.h in Headers */, 11397 5742A30825358A0400B7BA14 /* WebAuthnProcessCreationParameters.h in Headers */, 11398 572EBBC22536A60A000552B3 /* WebAuthnProcessMessages.h in Headers */, 11399 572EBBC92536AFD5000552B3 /* WebAuthnProcessProxy.h in Headers */, 11400 572EBBD02536BB11000552B3 /* WebAuthnProcessProxyMessages.h in Headers */, 11307 11401 F42D634122A0EFDF00D2FB3A /* WebAutocorrectionData.h in Headers */, 11308 11402 990D39F5243BE64800199388 /* WebAutomationDOMWindowObserver.h in Headers */, … … 12035 12129 productType = "com.apple.product-type.library.dynamic"; 12036 12130 }; 12037 57 A9FEFB252BD8AA006A2040 /* WebAuthenticationAgent*/ = {12131 5742A2E52535613F00B7BA14 /* WebAuthn */ = { 12038 12132 isa = PBXNativeTarget; 12039 buildConfigurationList = 57 A9FF00252BD8AB006A2040 /* Build configuration list for PBXNativeTarget "WebAuthenticationAgent" */;12133 buildConfigurationList = 5742A2F32535613F00B7BA14 /* Build configuration list for PBXNativeTarget "WebAuthn" */; 12040 12134 buildPhases = ( 12041 57A9FEF8252BD8AA006A2040 /* Sources */, 12042 57A9FEF9252BD8AA006A2040 /* Frameworks */, 12043 57A9FEFA252BD8AA006A2040 /* CopyFiles */, 12135 5742A2EA2535613F00B7BA14 /* Sources */, 12136 5742A2ED2535613F00B7BA14 /* Frameworks */, 12137 5742A2F02535613F00B7BA14 /* Resources */, 12138 5742A2F12535613F00B7BA14 /* Unlock keychain */, 12139 5742A2F22535613F00B7BA14 /* Process WebAuthentication entitlements */, 12044 12140 ); 12045 12141 buildRules = ( 12046 12142 ); 12047 12143 dependencies = ( 12048 ); 12049 name = WebAuthenticationAgent; 12050 productName = WebAuthenticationAgent; 12051 productReference = 57A9FEFC252BD8AA006A2040 /* com.apple.WebKit.WebAuthenticationAgent.Development */; 12052 productType = "com.apple.product-type.tool"; 12144 5742A2E62535613F00B7BA14 /* PBXTargetDependency */, 12145 5742A2E82535613F00B7BA14 /* PBXTargetDependency */, 12146 ); 12147 name = WebAuthn; 12148 productName = Networking; 12149 productReference = 5742A2F72535613F00B7BA14 /* com.apple.WebKit.WebAuthn.xpc */; 12150 productType = "com.apple.product-type.xpc-service"; 12053 12151 }; 12054 12152 8DC2EF4F0486A6940098B216 /* WebKit */ = { … … 12176 12274 ProvisioningStyle = Automatic; 12177 12275 }; 12178 57A9FEFB252BD8AA006A2040 = {12179 CreatedOnToolsVersion = 12.0;12180 };12181 12276 E1AC2E2720F7B94C00B0897D = { 12182 12277 CreatedOnToolsVersion = 9.3; … … 12208 12303 BC8283B016B4BF7700A278FE /* Networking */, 12209 12304 2D9FB216237523830049F936 /* GPU */, 12305 5742A2E52535613F00B7BA14 /* WebAuthn */, 12210 12306 BC82841E16B4FDF600A278FE /* Plugin.64 */, 12211 12307 A7AADA1019395CA9003EA1C7 /* Sandbox Profiles */, 12212 12308 E1AC2E2720F7B94C00B0897D /* Unlock Keychain */, 12213 12309 5325BDCD21DFF47700A0DEE1 /* Apply Configuration to XCFileLists */, 12214 57A9FEFB252BD8AA006A2040 /* WebAuthenticationAgent */,12215 12310 ); 12216 12311 }; … … 12233 12328 runOnlyForDeploymentPostprocessing = 0; 12234 12329 }; 12330 5742A2F02535613F00B7BA14 /* Resources */ = { 12331 isa = PBXResourcesBuildPhase; 12332 buildActionMask = 2147483647; 12333 files = ( 12334 ); 12335 runOnlyForDeploymentPostprocessing = 0; 12336 }; 12235 12337 8DC2EF520486A6940098B216 /* Resources */ = { 12236 12338 isa = PBXResourcesBuildPhase; … … 12239 12341 E17AE2C316B9C63A001C42F2 /* com.apple.WebKit.GPUProcess.sb in Resources */, 12240 12342 E17AE2C316B9C63A001C42F1 /* com.apple.WebKit.NetworkProcess.sb in Resources */, 12343 572EBBC42536AB84000552B3 /* com.apple.WebKit.WebAuthnProcess.sb in Resources */, 12241 12344 E11D35AE16B63D1B006D23D7 /* com.apple.WebProcess.sb in Resources */, 12242 12345 414DD37920BF43F5006959FB /* com.cisco.webex.plugin.gpc64.sb in Resources */, … … 12574 12677 shellScript = "Scripts/check-xcfilelists.sh\n"; 12575 12678 }; 12679 5742A2F12535613F00B7BA14 /* Unlock keychain */ = { 12680 isa = PBXShellScriptBuildPhase; 12681 buildActionMask = 2147483647; 12682 files = ( 12683 ); 12684 inputPaths = ( 12685 ); 12686 name = "Unlock keychain"; 12687 outputPaths = ( 12688 ); 12689 runOnlyForDeploymentPostprocessing = 0; 12690 shellPath = /bin/sh; 12691 shellScript = "UNLOCK_SCRIPT_PATH=\"${SRCROOT}/../../../Internal/Tools/Scripts/unlock-safari-engineering-keychain-if-needed\"\n\n[[ -x \"${UNLOCK_SCRIPT_PATH}\" ]] && exec \"${UNLOCK_SCRIPT_PATH}\"\n\nexit 0\n"; 12692 }; 12693 5742A2F22535613F00B7BA14 /* Process WebAuthentication entitlements */ = { 12694 isa = PBXShellScriptBuildPhase; 12695 buildActionMask = 2147483647; 12696 files = ( 12697 ); 12698 inputPaths = ( 12699 "$(SRCROOT)/Scripts/process-entitlements.sh", 12700 ); 12701 name = "Process WebAuthentication entitlements"; 12702 outputPaths = ( 12703 "$(WK_PROCESSED_XCENT_FILE)", 12704 ); 12705 runOnlyForDeploymentPostprocessing = 0; 12706 shellPath = /bin/sh; 12707 shellScript = "Scripts/process-entitlements.sh\n"; 12708 }; 12576 12709 5DF408C5131DD46700130071 /* Check For Weak VTables and Externals */ = { 12577 12710 isa = PBXShellScriptBuildPhase; … … 12683 12816 runOnlyForDeploymentPostprocessing = 0; 12684 12817 shellPath = /bin/sh; 12685 shellScript = "if [[ \"${DEPLOYMENT_LOCATION}\" == \"YES\" ]]; then\n exit\nfi\n\nif [[ ${WK_PLATFORM_NAME} != \"macosx\" ]]; then\n XPC_SERVICES_PATH=\"${BUILT_PRODUCTS_DIR}/WebKit.framework/XPCServices\"\n BUILT_PRODUCTS_DIR_RELATIVE_PATH_FROM_XPC_SERVICES=\"../..\"\nelse\n XPC_SERVICES_PATH=\"${BUILT_PRODUCTS_DIR}/WebKit.framework/Versions/A/XPCServices\"\n BUILT_PRODUCTS_DIR_RELATIVE_PATH_FROM_XPC_SERVICES=\"../../../..\"\nfi\n\nmkdir -p \"${XPC_SERVICES_PATH}\"\nln -sFh \"${BUILT_PRODUCTS_DIR_RELATIVE_PATH_FROM_XPC_SERVICES}/com.apple.WebKit.WebContent.xpc\" \"${XPC_SERVICES_PATH}/com.apple.WebKit.WebContent.xpc\"\nln -sFh \"${BUILT_PRODUCTS_DIR_RELATIVE_PATH_FROM_XPC_SERVICES}/com.apple.WebKit.Networking.xpc\" \"${XPC_SERVICES_PATH}/com.apple.WebKit.Networking.xpc\"\nln -sFh \"${BUILT_PRODUCTS_DIR_RELATIVE_PATH_FROM_XPC_SERVICES}/com.apple.WebKit.GPU.xpc\" \"${XPC_SERVICES_PATH}/com.apple.WebKit.GPU.xpc\"\n \nif [[ ${WK_PLATFORM_NAME} == macosx ]]; then\n ln -sFh \"${BUILT_PRODUCTS_DIR_RELATIVE_PATH_FROM_XPC_SERVICES}/com.apple.WebKit.Plugin.64.xpc\" \"${XPC_SERVICES_PATH}/com.apple.WebKit.Plugin.64.xpc\"\nfi\n";12818 shellScript = "if [[ \"${DEPLOYMENT_LOCATION}\" == \"YES\" ]]; then\n exit\nfi\n\nif [[ ${WK_PLATFORM_NAME} != \"macosx\" ]]; then\n XPC_SERVICES_PATH=\"${BUILT_PRODUCTS_DIR}/WebKit.framework/XPCServices\"\n BUILT_PRODUCTS_DIR_RELATIVE_PATH_FROM_XPC_SERVICES=\"../..\"\nelse\n XPC_SERVICES_PATH=\"${BUILT_PRODUCTS_DIR}/WebKit.framework/Versions/A/XPCServices\"\n BUILT_PRODUCTS_DIR_RELATIVE_PATH_FROM_XPC_SERVICES=\"../../../..\"\nfi\n\nmkdir -p \"${XPC_SERVICES_PATH}\"\nln -sFh \"${BUILT_PRODUCTS_DIR_RELATIVE_PATH_FROM_XPC_SERVICES}/com.apple.WebKit.WebContent.xpc\" \"${XPC_SERVICES_PATH}/com.apple.WebKit.WebContent.xpc\"\nln -sFh \"${BUILT_PRODUCTS_DIR_RELATIVE_PATH_FROM_XPC_SERVICES}/com.apple.WebKit.Networking.xpc\" \"${XPC_SERVICES_PATH}/com.apple.WebKit.Networking.xpc\"\nln -sFh \"${BUILT_PRODUCTS_DIR_RELATIVE_PATH_FROM_XPC_SERVICES}/com.apple.WebKit.GPU.xpc\" \"${XPC_SERVICES_PATH}/com.apple.WebKit.GPU.xpc\"\nln -sFh \"${BUILT_PRODUCTS_DIR_RELATIVE_PATH_FROM_XPC_SERVICES}/com.apple.WebKit.WebAuthn.xpc\" \"${XPC_SERVICES_PATH}/com.apple.WebKit.WebAuthn.xpc\"\n\nif [[ ${WK_PLATFORM_NAME} == macosx ]]; then\n ln -sFh \"${BUILT_PRODUCTS_DIR_RELATIVE_PATH_FROM_XPC_SERVICES}/com.apple.WebKit.Plugin.64.xpc\" \"${XPC_SERVICES_PATH}/com.apple.WebKit.Plugin.64.xpc\"\nfi\n"; 12686 12819 }; 12687 12820 99CA3862207286DB00BAD578 /* Copy WebDriver Atoms to Framework Private Headers */ = { … … 12822 12955 runOnlyForDeploymentPostprocessing = 0; 12823 12956 }; 12824 57 A9FEF8252BD8AA006A2040/* Sources */ = {12957 5742A2EA2535613F00B7BA14 /* Sources */ = { 12825 12958 isa = PBXSourcesBuildPhase; 12826 12959 buildActionMask = 2147483647; 12827 12960 files = ( 12828 57A9FF09252BEAF0006A2040 /* main.mm in Sources */, 12961 5742A2EB2535613F00B7BA14 /* AuxiliaryProcessMain.cpp in Sources */, 12962 5742A2EC2535613F00B7BA14 /* XPCServiceMain.mm in Sources */, 12829 12963 ); 12830 12964 runOnlyForDeploymentPostprocessing = 0; … … 13158 13292 1A8E7D3C18C15149005A702A /* VisitedLinkTableControllerMessageReceiver.cpp in Sources */, 13159 13293 57DCED702142EE680016B847 /* WebAuthenticatorCoordinatorProxyMessageReceiver.cpp in Sources */, 13294 572EBBBF2536A60A000552B3 /* WebAuthnConnectionToWebProcessMessageReceiver.cpp in Sources */, 13295 572EBBC12536A60A000552B3 /* WebAuthnProcessMessageReceiver.cpp in Sources */, 13296 572EBBCF2536BB11000552B3 /* WebAuthnProcessProxyMessageReceiver.cpp in Sources */, 13160 13297 575B1BBA23CE9C130020639A /* WebAutomationSession.cpp in Sources */, 13161 13298 1C0A19571C90068F00FE0EBB /* WebAutomationSessionMessageReceiver.cpp in Sources */, … … 13332 13469 targetProxy = 37F7407812721F740093869B /* PBXContainerItemProxy */; 13333 13470 }; 13334 57 A9FF0C252C31D6006A2040/* PBXTargetDependency */ = {13471 5742A2E62535613F00B7BA14 /* PBXTargetDependency */ = { 13335 13472 isa = PBXTargetDependency; 13336 target = 57A9FEFB252BD8AA006A2040 /* WebAuthenticationAgent */; 13337 targetProxy = 57A9FF0B252C31D6006A2040 /* PBXContainerItemProxy */; 13473 target = E1AC2E2720F7B94C00B0897D /* Unlock Keychain */; 13474 targetProxy = 5742A2E72535613F00B7BA14 /* PBXContainerItemProxy */; 13475 }; 13476 5742A2E82535613F00B7BA14 /* PBXTargetDependency */ = { 13477 isa = PBXTargetDependency; 13478 target = 8DC2EF4F0486A6940098B216 /* WebKit */; 13479 targetProxy = 5742A2E92535613F00B7BA14 /* PBXContainerItemProxy */; 13480 }; 13481 5742A2FA2535619D00B7BA14 /* PBXTargetDependency */ = { 13482 isa = PBXTargetDependency; 13483 target = 5742A2E52535613F00B7BA14 /* WebAuthn */; 13484 targetProxy = 5742A2F92535619D00B7BA14 /* PBXContainerItemProxy */; 13338 13485 }; 13339 13486 BC8283D516B4C01F00A278FE /* PBXTargetDependency */ = { … … 13593 13740 name = Production; 13594 13741 }; 13595 57 A9FF01252BD8AB006A2040/* Debug */ = {13742 5742A2F42535613F00B7BA14 /* Debug */ = { 13596 13743 isa = XCBuildConfiguration; 13597 baseConfigurationReference = 57A9FF07252BE6E0006A2040 /* WebAuth enticationAgent.xcconfig */;13744 baseConfigurationReference = 57A9FF07252BE6E0006A2040 /* WebAuthnService.xcconfig */; 13598 13745 buildSettings = { 13599 13746 }; 13600 13747 name = Debug; 13601 13748 }; 13602 57 A9FF02252BD8AB006A2040/* Release */ = {13749 5742A2F52535613F00B7BA14 /* Release */ = { 13603 13750 isa = XCBuildConfiguration; 13604 baseConfigurationReference = 57A9FF07252BE6E0006A2040 /* WebAuth enticationAgent.xcconfig */;13751 baseConfigurationReference = 57A9FF07252BE6E0006A2040 /* WebAuthnService.xcconfig */; 13605 13752 buildSettings = { 13606 13753 }; 13607 13754 name = Release; 13608 13755 }; 13609 57 A9FF03252BD8AB006A2040/* Production */ = {13756 5742A2F62535613F00B7BA14 /* Production */ = { 13610 13757 isa = XCBuildConfiguration; 13611 baseConfigurationReference = 57A9FF07252BE6E0006A2040 /* WebAuth enticationAgent.xcconfig */;13758 baseConfigurationReference = 57A9FF07252BE6E0006A2040 /* WebAuthnService.xcconfig */; 13612 13759 buildSettings = { 13613 13760 }; … … 13870 14017 defaultConfigurationName = Production; 13871 14018 }; 13872 57 A9FF00252BD8AB006A2040 /* Build configuration list for PBXNativeTarget "WebAuthenticationAgent" */ = {14019 5742A2F32535613F00B7BA14 /* Build configuration list for PBXNativeTarget "WebAuthn" */ = { 13873 14020 isa = XCConfigurationList; 13874 14021 buildConfigurations = ( 13875 57 A9FF01252BD8AB006A2040/* Debug */,13876 57 A9FF02252BD8AB006A2040/* Release */,13877 57 A9FF03252BD8AB006A2040/* Production */,14022 5742A2F42535613F00B7BA14 /* Debug */, 14023 5742A2F52535613F00B7BA14 /* Release */, 14024 5742A2F62535613F00B7BA14 /* Production */, 13878 14025 ); 13879 14026 defaultConfigurationIsVisible = 0; -
trunk/Source/WebKit/WebProcess/WebAuthentication/WebAuthnProcessConnection.cpp
r268604 r268605 24 24 */ 25 25 26 #import "config.h" 26 #include "config.h" 27 #include "WebAuthnProcessConnection.h" 27 28 28 int main(int argc, const char* argv[]) 29 #if ENABLE(WEB_AUTHN) 30 31 #include "WebAuthnConnectionToWebProcessMessages.h" 32 #include "WebPageMessages.h" 33 #include "WebProcess.h" 34 35 namespace WebKit { 36 using namespace WebCore; 37 38 WebAuthnProcessConnection::WebAuthnProcessConnection(IPC::Connection::Identifier connectionIdentifier) 39 : m_connection(IPC::Connection::createClientConnection(connectionIdentifier, *this)) 29 40 { 30 @autoreleasepool { 31 WTFLogAlways("com.apple.webkit.WebAuthenticationAgent started."); 32 } 41 m_connection->open(); 42 } 33 43 34 [[NSRunLoop mainRunLoop] run]; 44 WebAuthnProcessConnection::~WebAuthnProcessConnection() 45 { 46 m_connection->invalidate(); 47 } 35 48 36 return 0; 49 void WebAuthnProcessConnection::didClose(IPC::Connection&) 50 { 37 51 } 52 53 void WebAuthnProcessConnection::didReceiveInvalidMessage(IPC::Connection&, IPC::MessageName) 54 { 55 } 56 57 } // namespace WebKit 58 59 #endif // ENABLE(WEB_AUTHN) -
trunk/Source/WebKit/WebProcess/WebAuthentication/WebAuthnProcessConnection.h
r268604 r268605 24 24 */ 25 25 26 # import "config.h"26 #pragma once 27 27 28 int main(int argc, const char* argv[]) 29 { 30 @autoreleasepool { 31 WTFLogAlways("com.apple.webkit.WebAuthenticationAgent started."); 28 #if ENABLE(WEB_AUTHN) 29 30 #include "Connection.h" 31 #include <wtf/RefCounted.h> 32 #include <wtf/text/WTFString.h> 33 34 namespace WebKit { 35 36 class WebAuthnProcessConnection : public RefCounted<WebAuthnProcessConnection>, IPC::Connection::Client { 37 public: 38 static Ref<WebAuthnProcessConnection> create(IPC::Connection::Identifier connectionIdentifier) 39 { 40 return adoptRef(*new WebAuthnProcessConnection(connectionIdentifier)); 32 41 } 42 ~WebAuthnProcessConnection(); 33 43 34 [[NSRunLoop mainRunLoop] run];44 IPC::Connection& connection() { return m_connection.get(); } 35 45 36 return 0; 37 } 46 private: 47 WebAuthnProcessConnection(IPC::Connection::Identifier); 48 49 // IPC::Connection::Client 50 void didClose(IPC::Connection&) override; 51 void didReceiveInvalidMessage(IPC::Connection&, IPC::MessageName) override; 52 53 // The connection from the web process to the WebAuthn process. 54 Ref<IPC::Connection> m_connection; 55 }; 56 57 } // namespace WebKit 58 59 #endif // ENABLE(WEB_AUTHN) -
trunk/Source/WebKit/WebProcess/WebProcess.cpp
r268384 r268605 166 166 #endif 167 167 168 #if ENABLE(WEB_AUTHN) 169 #include "WebAuthnConnectionToWebProcessMessages.h" 170 #include "WebAuthnProcessConnection.h" 171 #include "WebAuthnProcessConnectionInfo.h" 172 #endif 173 168 174 #if ENABLE(REMOTE_INSPECTOR) 169 175 #include <JavaScriptCore/RemoteInspector.h> … … 1317 1323 #endif // ENABLE(GPU_PROCESS) 1318 1324 1325 #if ENABLE(WEB_AUTHN) 1326 1327 static WebAuthnProcessConnectionInfo getWebAuthnProcessConnection(IPC::Connection& connection) 1328 { 1329 WebAuthnProcessConnectionInfo connectionInfo; 1330 if (!connection.sendSync(Messages::WebProcessProxy::GetWebAuthnProcessConnection(), Messages::WebProcessProxy::GetWebAuthnProcessConnection::Reply(connectionInfo), 0)) { 1331 // If we failed the first time, retry once. The attachment may have become invalid 1332 // before it was received by the web process if the network process crashed. 1333 if (!connection.sendSync(Messages::WebProcessProxy::GetWebAuthnProcessConnection(), Messages::WebProcessProxy::GetWebAuthnProcessConnection::Reply(connectionInfo), 0)) 1334 CRASH(); 1335 } 1336 1337 return connectionInfo; 1338 } 1339 1340 WebAuthnProcessConnection& WebProcess::ensureWebAuthnProcessConnection() 1341 { 1342 RELEASE_ASSERT(RunLoop::isMain()); 1343 1344 // If we've lost our connection to the WebAuthn process (e.g. it crashed) try to re-establish it. 1345 if (!m_webAuthnProcessConnection) { 1346 auto connectionInfo = getWebAuthnProcessConnection(*parentProcessConnection()); 1347 1348 // Retry once if the IPC to get the connectionIdentifier succeeded but the connectionIdentifier we received 1349 // is invalid. This may indicate that the WebAuthn process has crashed. 1350 if (!IPC::Connection::identifierIsValid(connectionInfo.identifier())) 1351 connectionInfo = getWebAuthnProcessConnection(*parentProcessConnection()); 1352 1353 if (!IPC::Connection::identifierIsValid(connectionInfo.identifier())) 1354 CRASH(); 1355 1356 m_webAuthnProcessConnection = WebAuthnProcessConnection::create(connectionInfo.releaseIdentifier()); 1357 } 1358 1359 return *m_webAuthnProcessConnection; 1360 } 1361 1362 void WebProcess::webAuthnProcessConnectionClosed(WebAuthnProcessConnection* connection) 1363 { 1364 ASSERT(m_webAuthnProcessConnection); 1365 ASSERT_UNUSED(connection, m_webAuthnProcessConnection == connection); 1366 1367 m_webAuthnProcessConnection = nullptr; 1368 } 1369 1370 #endif // ENABLE(WEB_AUTHN) 1371 1319 1372 void WebProcess::setEnhancedAccessibility(bool flag) 1320 1373 { -
trunk/Source/WebKit/WebProcess/WebProcess.h
r268384 r268605 116 116 class UserData; 117 117 class WaylandCompositorDisplay; 118 class WebAuthnProcessConnection; 118 119 class WebAutomationSessionProxy; 119 120 class WebCacheStorageProvider; … … 233 234 #endif // ENABLE(GPU_PROCESS) 234 235 236 #if ENABLE(WEB_AUTHN) 237 WebAuthnProcessConnection& ensureWebAuthnProcessConnection(); 238 void webAuthnProcessConnectionClosed(WebAuthnProcessConnection*); 239 WebAuthnProcessConnection* existingWebAuthnProcessConnection() { return m_webAuthnProcessConnection.get(); } 240 #endif 241 235 242 LibWebRTCNetwork& libWebRTCNetwork(); 236 243 … … 587 594 #endif 588 595 596 #if ENABLE(WEB_AUTHN) 597 RefPtr<WebAuthnProcessConnection> m_webAuthnProcessConnection; 598 #endif 599 589 600 Ref<WebCacheStorageProvider> m_cacheStorageProvider; 590 601 Ref<WebCookieJar> m_cookieJar;
Note: See TracChangeset
for help on using the changeset viewer.