Remove Cocoa CFURLConnection loading code
[WebKit-https.git] / Source / WebKit / ChangeLog
index f7e1dda..ab3b5db 100644 (file)
@@ -1,3 +1,265 @@
+2017-11-14  Alex Christensen  <achristensen@webkit.org>
+
+        Remove Cocoa CFURLConnection loading code
+        https://bugs.webkit.org/show_bug.cgi?id=179688
+
+        Reviewed by Antti Koivisto.
+
+        * NetworkProcess/Downloads/Download.h:
+
+2017-11-14  Daniel Bates  <dabates@apple.com>
+
+        Update comment in FeatureDefines.xcconfig to reflect location of Visual Studio property files
+        for feature defines
+
+        Following r195498 and r201917 the Visual Studio property files for feature defines have
+        moved from directory WebKitLibraries/win/tools/vsprops to directory Source/cmake/tools/vsprops.
+        Update the comment in FeatureDefines.xcconfig to reflect the new location and names of these
+        files.
+
+        * Configurations/FeatureDefines.xcconfig:
+
+2017-11-14  Brent Fulgham  <bfulgham@apple.com>
+
+        Whitelist some IOKIt properties to avoid sandbox violations on YouTube
+        https://bugs.webkit.org/show_bug.cgi?id=179683
+        <rdar://problem/35415368>
+
+        Reviewed by Dean Jackson.
+
+        YouTube video playback on some hardware (and some video encodings) generates sandbox violations. Add
+        whitelist entries for the relevant IOKit properties needed to support these activities.
+
+        * WebProcess/com.apple.WebProcess.sb.in:
+
+2017-11-14  Daniel Bates  <dabates@apple.com>
+
+        Mark WebChromeClient::requestStorageAccess() as final
+        https://bugs.webkit.org/show_bug.cgi?id=179673
+
+        Reviewed by Sam Weinig.
+
+        Mark WebChromeClient::requestStorageAccess() as final so that it overrides the virtual function
+        in ChromeClient with the same name and hence we actually call it through a ChromeClient pointer.
+
+        * WebProcess/WebCoreSupport/WebChromeClient.h:
+
+2017-11-14  Youenn Fablet  <youenn@apple.com>
+
+        WebSWClientConnection should do IPC to StorageProcess if its WebSWOriginTable is not yet initialized
+        https://bugs.webkit.org/show_bug.cgi?id=179668
+
+        Reviewed by Chris Dumez.
+
+        There may be cases where the origin table is not initialized and we would think there is no service worker registration.
+        In such a case, we should go to the StorageProcess.
+        StorageProcess is now sending an IPC message back to each registered SW connection so that WebProcess will know whether its map
+        is correctly initialized or not.
+
+        Renaming hasServiceWorkerRegisteredForOrigin in mayHaveServiceWorkerRegisteredForOrigin.
+
+        * WebProcess/Storage/WebSWClientConnection.cpp:
+        (WebKit::WebSWClientConnection::mayHaveServiceWorkerRegisteredForOrigin const):
+        (WebKit::WebSWClientConnection::matchRegistration):
+        (WebKit::WebSWClientConnection::hasServiceWorkerRegisteredForOrigin const): Deleted.
+        * WebProcess/Storage/WebSWClientConnection.h:
+        * WebProcess/Storage/WebSWOriginTable.h:
+        (WebKit::WebSWOriginTable::isInitialized const):
+        * WebProcess/Storage/WebServiceWorkerProvider.cpp:
+        (WebKit::shouldHandleFetch):
+
+2017-11-14  Brent Fulgham  <bfulgham@apple.com>
+
+        Consolidate sysctl-read rules in WebProcess sandbox
+        https://bugs.webkit.org/show_bug.cgi?id=179674
+        <rdar://problem/35367154>
+
+        Reviewed by Dean Jackson.
+
+        Consolidate the various calls to 'allow sysctl-read' imported during Bug 179548 into
+        the main function in the sandbox profile.
+
+        Remove the statement to grant global sysctl-read permissions that was copied into this
+        sandbox profile in an earlier checkin. We started blocking the blanket read permissions in
+        macOS 10.13, and want to continue to do so.
+        
+        The earlier "grant global read access" in 'system.sb' apparently allowed some sysctl reads
+        to occur before we hit the block declaration in the WebContent sandbox. Now that we are
+        consistently blocking systcl reads from the start, we need to add whitelist entries for a
+        few more entries to avoid creating new sandbox violations.
+
+        * WebProcess/com.apple.WebProcess.sb.in:
+
+2017-11-14  Alex Christensen  <achristensen@webkit.org>
+
+        Remove WebKit CFURLConnection code
+        https://bugs.webkit.org/show_bug.cgi?id=179645
+
+        Reviewed by Alexey Proskuryakov.
+
+        The CFURLConnection code is Windows-specific now. Nobody can use it in modern WebKit.
+
+        * NetworkProcess/Downloads/Download.h:
+        * NetworkProcess/Downloads/mac/DownloadMac.mm:
+        * NetworkProcess/NetworkLoad.h:
+        * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm:
+        (WebKit::serverTrustCredential):
+        * NetworkProcess/mac/NetworkLoadMac.mm:
+        * Shared/Authentication/AuthenticationManager.cpp:
+        (WebKit::AuthenticationManager::useCredentialForSingleChallenge):
+        (WebKit::AuthenticationManager::continueWithoutCredentialForSingleChallenge):
+        (WebKit::AuthenticationManager::cancelSingleChallenge):
+        (WebKit::AuthenticationManager::performDefaultHandlingForSingleChallenge):
+        (WebKit::AuthenticationManager::rejectProtectionSpaceAndContinueForSingleChallenge):
+        * Shared/Authentication/cocoa/AuthenticationManagerCocoa.mm:
+        * Shared/Authentication/mac/AuthenticationManager.mac.mm:
+        (WebKit::AuthenticationManager::tryUseCertificateInfoForChallenge):
+        * Shared/WebProcessCreationParameters.cpp:
+        (WebKit::WebProcessCreationParameters::encode const):
+        (WebKit::WebProcessCreationParameters::decode):
+        * Shared/WebProcessCreationParameters.h:
+        * Shared/mac/WebCoreArgumentCodersMac.mm:
+        (IPC::ArgumentCoder<ResourceRequest>::encodePlatformData):
+        (IPC::ArgumentCoder<ResourceRequest>::decodePlatformData):
+        * config.h:
+
+2017-11-14  Alex Christensen  <achristensen@webkit.org>
+
+        Remove assertions added in r224791
+        https://bugs.webkit.org/show_bug.cgi?id=178751#c10
+
+        * NetworkProcess/mac/RemoteNetworkingContext.mm:
+        (WebKit::RemoteNetworkingContext::ensureWebsiteDataStoreSession):
+        * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
+        (WebKit::WebFrameNetworkingContext::ensureWebsiteDataStoreSession):
+        I had added assertions that sandbox extension handle consumption succeeds.
+        In the API test IndexedDB.StructuredCloneBackwardCompatibility we get a sandbox extension handle
+        to give access to a directory that does not exist and consumption fails.  We want it to fail,
+        so my optimistic addition of a success assertion was incorrect.  The test passes without it
+        and behaves like it used to.
+
+2017-11-14  Tim Horton  <timothy_horton@apple.com>
+
+        Don't use -[NSString stringWithFormat:] to build defaults keys
+        https://bugs.webkit.org/show_bug.cgi?id=179680
+
+        Reviewed by Simon Fraser.
+
+        * UIProcess/mac/WebPreferencesMac.mm:
+        (WebKit::makeKey):
+        (WebKit::debugUserDefaultsValue):
+        Use string concatenation instead of stringWithFormat to build
+        preference keys. This wasn't a huge cost, but it shaves a few milliseconds
+        off process launch.
+
+2017-11-14  Alex Christensen  <achristensen@webkit.org>
+
+        Clean up old URL parser remnants
+        https://bugs.webkit.org/show_bug.cgi?id=179573
+
+        Reviewed by Darin Adler.
+
+        * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
+        (WebKit::WebContextMenuClient::searchWithGoogle):
+        Use https if we do end up searching with google.
+
+2017-11-14  Antti Koivisto  <antti@apple.com>
+
+        Enable display:contents by default
+        https://bugs.webkit.org/show_bug.cgi?id=179655
+
+        Reviewed by Sam Weinig.
+
+        * Shared/WebPreferences.yaml:
+
+        Make non-experimental and enabled.
+
+2017-11-10  Brent Fulgham  <bfulgham@apple.com>
+
+        Consolidate mach-lookup calls in WebProcess sandbox
+        https://bugs.webkit.org/show_bug.cgi?id=179650
+        <rdar://problem/35367154>
+
+        Reviewed by Dean Jackson.
+
+        Consolidate the various calls to 'allow mach-lookup' imported during Bug 179548 into the main
+        function in the sandbox profile. Remove some entries that are not needed by WebKit.
+
+        Remove the statement to grant global permission to perform mach-lookup for any xpc
+        service name that was copied into this sandbox profile in Bug 179548. We started blocking
+        this in macOS 10.13 and want to continue to do so.
+        
+        The earlier "grant global permission" in 'system.sb' apparently allowed some xpc lookups to occur
+        before we hit the block declaration in the WebContent sandbox. Now that we are consistently blocking
+        mach lookups we need to add whitelist entries for a few more services to avoid creating new
+        sandbox violations.
+
+        * WebProcess/com.apple.WebProcess.sb.in:
+
+2017-11-14  Tim Horton  <timothy_horton@apple.com>
+
+        Long pressing a phone number with spaces in it results in a link sheet instead of a data detectors sheet
+        https://bugs.webkit.org/show_bug.cgi?id=179646
+        <rdar://problem/35337288>
+
+        Reviewed by Simon Fraser.
+
+        * UIProcess/ios/WKActionSheetAssistant.mm:
+        (-[WKActionSheetAssistant showImageSheet]):
+        (-[WKActionSheetAssistant showLinkSheet]):
+        (-[WKActionSheetAssistant showDataDetectorsSheet]):
+        * UIProcess/ios/WKContentViewInteraction.mm:
+        (-[WKContentView _actionForLongPressFromPositionInformation:]):
+        (-[WKContentView _interactionShouldBeginFromPreviewItemController:forPosition:]):
+        Make use of canBePresentedByDataDetectors with our WebCore URL instead
+        of (sometimes unsucessfully) reparsing the URL with NSURL's parser.
+        Also, avoid a few unnecessary round-trips through String when converting
+        from URL to NSURL.
+
+2017-11-14  Brent Fulgham  <bfulgham@apple.com>
+
+        REGRESSION(r224799): WebKit crashes on Sierra due to sandbox violation
+        https://bugs.webkit.org/show_bug.cgi?id=179656
+        
+        Unreviewed build fix.
+
+        * WebProcess/com.apple.WebProcess.sb.in: Switch to Dan's recommended version check.
+
+2017-11-13  Joseph Pecoraro  <pecoraro@apple.com>
+
+        Give a ServiceWorker WebContentProcess a different display name
+        https://bugs.webkit.org/show_bug.cgi?id=179653
+
+        Reviewed by Brady Eidson.
+
+        * UIProcess/WebProcessProxy.h:
+        * UIProcess/WebProcessProxy.cpp:
+        (WebKit::WebProcessProxy::create):
+        Call connect after construction so virtual methods will use subclass implementations.
+
+        * UIProcess/ServiceWorkerProcessProxy.h:
+        * UIProcess/ServiceWorkerProcessProxy.cpp:
+        (WebKit::ServiceWorkerProcessProxy::create):
+        Copy the pattern from WebProcessProxy to ensure connect() gets called after construction.
+
+        (WebKit::ServiceWorkerProcessProxy::getLaunchOptions):
+        Set a launch option to signal this is a Service Worker process.
+
+        * Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.mm:
+        (WebKit::XPCServiceInitializerDelegate::getExtraInitializationData):
+        * WebProcess/cocoa/WebProcessCocoa.mm:
+        (WebKit::WebProcess::initializeProcessName):
+        Consume the launch option to configuration the process name.
+
+2017-11-13  Ryosuke Niwa  <rniwa@webkit.org>
+
+        REGRESSION(r224799): WebKit crashes at launch on macOS Sierra due to a sandbox violation
+        https://bugs.webkit.org/show_bug.cgi?id=179656
+
+        Unreviewed. Revert r224799 on macOS Sierra.
+
+        * WebProcess/com.apple.WebProcess.sb.in:
+
 2017-11-13  Chris Dumez  <cdumez@apple.com>
 
         Send ServiceWorkerData structs to the WebProcesses instead of ServiceWorkerIdentifiers