https://bugs.webkit.org/show_bug.cgi?id=60274
Reviewed by Steve Falkenburg.
Source/WebCore:
Share the default storage session between the UI and Web Processes.
* platform/network/cf/CookieStorageCFNet.cpp:
(WebCore::defaultSessionCookieStorage):
Keep track of the default storage session cookie storage.
(WebCore::currentCookieStorage):
Call defaultCookieStorage to get the default cookie storage.
(WebCore::defaultCookieStorage):
If there is a default storage session cookie storage, prefer that over getting the default
cookie storage. In the Web Process, asking CFNetwork for the default cookie storage directly
without specifying a storage session will not get the cookie storage being shared by the UI
and Web Processes.
* platform/network/ResourceHandle.h:
* platform/network/cf/ResourceHandleCFNet.cpp:
(WebCore::willSendRequest):
Make sure to set the current storage session on any requests used by the Web
Process before CFNetwork has to do anything with them, in order for CFNetwork to avoid
doing anything with the Web Process's default storage session (which is not the one shared
with the UI Process).
(WebCore::makeFinalRequest):
Ditto.
(WebCore::ResourceHandle::willSendRequest):
Ditto.
(WebCore::ResourceHandle::currentStorageSession):
If there is a Private Browsing storage session, return that.
If not, on Windows return the default storage session that is being shared with the UI
Process and on Mac return 0.
(WebCore::defaultCFURLStorageSession):
(WebCore::ResourceHandle::setDefaultStorageSession):
(WebCore::ResourceHandle::defaultStorageSession):
* platform/network/cf/ResourceRequestCFNet.cpp:
(WebCore::ResourceRequest::doUpdatePlatformRequest):
Make sure to set the current storage session on any requests used by the Web
Process before CFNetwork has to do anything with them, in order for CFNetwork to avoid
doing anything with the Web Process's default storage session (which is not the one shared
with the UI Process).
Source/WebKit/win:
* WebView.cpp:
(WebView::setCacheModel):
Pass 0 to wkCopyFoundationCacheDirectory so that it uses the default session.
Source/WebKit2:
Share the default storage session between the UI and Web Processes.
* Shared/WebProcessCreationParameters.cpp:
(WebKit::WebProcessCreationParameters::encode):
Only encode the session parameter if it is valid.
(WebKit::WebProcessCreationParameters::decode):
Don't try to decode a null session data.
* Shared/WebProcessCreationParameters.h:
Add a parameter for a serialized default storage session, used only on Windows.
* Shared/win/WebCoreArgumentCodersWin.cpp:
(CoreIPC::decodeResourceRequest):
Make sure to set the current storage session on any requests used by the Web
Process before CFNetwork has to do anything with them, in order for CFNetwork to avoid
doing anything with the Web Process's default storage session.
* UIProcess/win/WebContextWin.cpp:
(WebKit::WebContext::platformInitializeWebProcess):
Serialize the default storage session in the UI Process and add it to the
WebProcessCreationParameters.
* WebProcess/WebPage/win/WebPageWin.cpp:
(WebKit::cachedResponseForURL):
Use the cache associated with the current storage session and make sure the request has the
current storage session set on it before doing anything with it.
* WebProcess/win/WebProcessWin.cpp:
(WebKit::WebProcess::platformSetCacheModel):
Use the default storage session.
(WebKit::WebProcess::platformClearResourceCaches):
Ditto.
(WebKit::WebProcess::platformInitializeWebProcess):
Deserialize the default storage session passed in by the UI Process and hand it to the
ResourceHandle.
WebKitLibraries:
Take 3 after rolling out KB2465367 from my system.
* win/include/WebKitSystemInterface/WebKitSystemInterface.h:
* win/lib/WebKitSystemInterface.lib:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86285
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
+2011-05-11 Jessie Berlin <jberlin@apple.com>
+
+ Reviewed by Steve Falkenburg.
+
+ [Windows WebKit2] Use cookies set in WebKit1
+ https://bugs.webkit.org/show_bug.cgi?id=60274
+
+ Share the default storage session between the UI and Web Processes.
+
+ * platform/network/cf/CookieStorageCFNet.cpp:
+ (WebCore::defaultSessionCookieStorage):
+ Keep track of the default storage session cookie storage.
+ (WebCore::currentCookieStorage):
+ Call defaultCookieStorage to get the default cookie storage.
+ (WebCore::defaultCookieStorage):
+ If there is a default storage session cookie storage, prefer that over getting the default
+ cookie storage. In the Web Process, asking CFNetwork for the default cookie storage directly
+ without specifying a storage session will not get the cookie storage being shared by the UI
+ and Web Processes.
+
+ * platform/network/ResourceHandle.h:
+ * platform/network/cf/ResourceHandleCFNet.cpp:
+ (WebCore::willSendRequest):
+ Make sure to set the current storage session on any requests used by the Web
+ Process before CFNetwork has to do anything with them, in order for CFNetwork to avoid
+ doing anything with the Web Process's default storage session (which is not the one shared
+ with the UI Process).
+ (WebCore::makeFinalRequest):
+ Ditto.
+ (WebCore::ResourceHandle::willSendRequest):
+ Ditto.
+ (WebCore::ResourceHandle::currentStorageSession):
+ If there is a Private Browsing storage session, return that.
+ If not, on Windows return the default storage session that is being shared with the UI
+ Process and on Mac return 0.
+ (WebCore::defaultCFURLStorageSession):
+ (WebCore::ResourceHandle::setDefaultStorageSession):
+ (WebCore::ResourceHandle::defaultStorageSession):
+
+ * platform/network/cf/ResourceRequestCFNet.cpp:
+ (WebCore::ResourceRequest::doUpdatePlatformRequest):
+ Make sure to set the current storage session on any requests used by the Web
+ Process before CFNetwork has to do anything with them, in order for CFNetwork to avoid
+ doing anything with the Web Process's default storage session (which is not the one shared
+ with the UI Process).
+
2011-05-11 Lucas De Marchi <lucas.demarchi@profusion.mobi>
Reviewed by David Kilzer.
static void setPrivateBrowsingEnabled(bool);
static CFURLStorageSessionRef privateBrowsingStorageSession();
static void setPrivateBrowsingStorageSessionIdentifierBase(const String&);
-#endif
+ static CFURLStorageSessionRef currentStorageSession();
+#if PLATFORM(WIN)
+ static void setDefaultStorageSession(CFURLStorageSessionRef);
+ static CFURLStorageSessionRef defaultStorageSession();
+#endif // PLATFORM(WIN)
+#endif // USE(CFURLSTORAGESESSIONS)
using RefCounted<ResourceHandle>::ref;
using RefCounted<ResourceHandle>::deref;
#if USE(CFNETWORK)
+static RetainPtr<CFHTTPCookieStorageRef>& defaultSessionCookieStorage()
+{
+ DEFINE_STATIC_LOCAL(RetainPtr<CFHTTPCookieStorageRef>, cookieStorage, ());
+#if USE(CFURLSTORAGESESSIONS) && PLATFORM(WIN)
+ if (!cookieStorage && ResourceHandle::defaultStorageSession())
+ cookieStorage.adoptCF(wkCopyHTTPCookieStorage(ResourceHandle::defaultStorageSession()));
+#endif
+ return cookieStorage;
+}
+
CFHTTPCookieStorageRef currentCookieStorage()
{
ASSERT(isMainThread());
if (CFHTTPCookieStorageRef cookieStorage = privateBrowsingCookieStorage().get())
return cookieStorage;
- return wkGetDefaultHTTPCookieStorage();
+ return defaultCookieStorage();
}
void setCurrentCookieStorage(CFHTTPCookieStorageRef cookieStorage)
CFHTTPCookieStorageRef defaultCookieStorage()
{
+ if (CFHTTPCookieStorageRef defaultCookieStorage = defaultSessionCookieStorage().get())
+ return defaultCookieStorage;
return wkGetDefaultHTTPCookieStorage();
}
RetainPtr<CFStringRef> newMethod(AdoptCF, CFURLRequestCopyHTTPRequestMethod(cfRequest));
if (CFStringCompareWithOptions(lastHTTPMethod.get(), newMethod.get(), CFRangeMake(0, CFStringGetLength(lastHTTPMethod.get())), kCFCompareCaseInsensitive)) {
RetainPtr<CFMutableURLRequestRef> mutableRequest(AdoptCF, CFURLRequestCreateMutableCopy(0, cfRequest));
+#if USE(CFURLSTORAGESESSIONS)
+ wkSetRequestStorageSession(ResourceHandle::currentStorageSession(), mutableRequest.get());
+#endif
CFURLRequestSetHTTPRequestMethod(mutableRequest.get(), lastHTTPMethod.get());
FormData* body = handle->firstRequest().httpBody();
static CFURLRequestRef makeFinalRequest(const ResourceRequest& request, bool shouldContentSniff)
{
CFMutableURLRequestRef newRequest = CFURLRequestCreateMutableCopy(kCFAllocatorDefault, request.cfURLRequest());
-
#if USE(CFURLSTORAGESESSIONS)
- if (CFURLStorageSessionRef storageSession = ResourceHandle::privateBrowsingStorageSession())
- wkSetRequestStorageSession(storageSession, newRequest);
+ wkSetRequestStorageSession(ResourceHandle::currentStorageSession(), newRequest);
#endif
if (!shouldContentSniff)
request.clearHTTPAuthorization();
#if USE(CFURLSTORAGESESSIONS)
- if (CFURLStorageSessionRef storageSession = privateBrowsingStorageSession())
- request.setStorageSession(storageSession);
+ request.setStorageSession(ResourceHandle::currentStorageSession());
#endif
client()->willSendRequest(this, request, redirectResponse);
return String(reinterpret_cast<CFStringRef>(CFBundleGetValueForInfoDictionaryKey(CFBundleGetMainBundle(), kCFBundleIdentifierKey)));
}
+CFURLStorageSessionRef ResourceHandle::currentStorageSession()
+{
+ if (CFURLStorageSessionRef privateStorageSession = privateBrowsingStorageSession())
+ return privateStorageSession;
+#if PLATFORM(WIN)
+ return defaultStorageSession();
+#else
+ return 0;
#endif
+}
+
+#if PLATFORM(WIN)
+
+static RetainPtr<CFURLStorageSessionRef>& defaultCFURLStorageSession()
+{
+ DEFINE_STATIC_LOCAL(RetainPtr<CFURLStorageSessionRef>, storageSession, ());
+ return storageSession;
+}
+
+void ResourceHandle::setDefaultStorageSession(CFURLStorageSessionRef storageSession)
+{
+ defaultCFURLStorageSession().adoptCF(storageSession);
+}
+
+CFURLStorageSessionRef ResourceHandle::defaultStorageSession()
+{
+ return defaultCFURLStorageSession().get();
+}
+
+#endif // PLATFORM(WIN)
+
+#endif // USE(CFURLSTORAGESESSIONS)
void WebCoreSynchronousLoaderClient::willSendRequest(ResourceHandle* handle, ResourceRequest& request, const ResourceResponse& /*redirectResponse*/)
{
#include "config.h"
#include "ResourceRequestCFNet.h"
+#include "ResourceHandle.h"
#include "ResourceRequest.h"
#if PLATFORM(MAC)
CFURLRequestSetMainDocumentURL(cfRequest, firstPartyForCookies.get());
CFURLRequestSetCachePolicy(cfRequest, (CFURLRequestCachePolicy)cachePolicy());
CFURLRequestSetTimeoutInterval(cfRequest, timeoutInterval());
- } else {
+ } else
cfRequest = CFURLRequestCreateMutable(0, url.get(), (CFURLRequestCachePolicy)cachePolicy(), timeoutInterval(), firstPartyForCookies.get());
- }
+#if USE(CFURLSTORAGESESSIONS)
+ wkSetRequestStorageSession(ResourceHandle::currentStorageSession(), cfRequest);
+#endif
RetainPtr<CFStringRef> requestMethod(AdoptCF, httpMethod().createCFString());
CFURLRequestSetHTTPRequestMethod(cfRequest, requestMethod.get());
+2011-05-11 Jessie Berlin <jberlin@apple.com>
+
+ Reviewed by Steve Falkenburg.
+
+ [Windows WebKit2] Use cookies set in WebKit1
+ https://bugs.webkit.org/show_bug.cgi?id=60274
+
+ * WebView.cpp:
+ (WebView::setCacheModel):
+ Pass 0 to wkCopyFoundationCacheDirectory so that it uses the default session.
+
2011-05-11 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r86255.
return;
RetainPtr<CFURLCacheRef> cfurlCache(AdoptCF, CFURLCacheCopySharedURLCache());
- RetainPtr<CFStringRef> cfurlCacheDirectory(AdoptCF, wkCopyFoundationCacheDirectory());
+ RetainPtr<CFStringRef> cfurlCacheDirectory(AdoptCF, wkCopyFoundationCacheDirectory(0));
if (!cfurlCacheDirectory)
cfurlCacheDirectory.adoptCF(WebCore::localUserSpecificStorageDirectory().createCFString());
+2011-05-11 Jessie Berlin <jberlin@apple.com>
+
+ Reviewed by Steve Falkenburg.
+
+ [Windows WebKit2] Use cookies set in WebKit1
+ https://bugs.webkit.org/show_bug.cgi?id=60274
+
+ Share the default storage session between the UI and Web Processes.
+
+ * Shared/WebProcessCreationParameters.cpp:
+ (WebKit::WebProcessCreationParameters::encode):
+ Only encode the session parameter if it is valid.
+ (WebKit::WebProcessCreationParameters::decode):
+ Don't try to decode a null session data.
+ * Shared/WebProcessCreationParameters.h:
+ Add a parameter for a serialized default storage session, used only on Windows.
+
+ * Shared/win/WebCoreArgumentCodersWin.cpp:
+ (CoreIPC::decodeResourceRequest):
+ Make sure to set the current storage session on any requests used by the Web
+ Process before CFNetwork has to do anything with them, in order for CFNetwork to avoid
+ doing anything with the Web Process's default storage session.
+
+ * UIProcess/win/WebContextWin.cpp:
+ (WebKit::WebContext::platformInitializeWebProcess):
+ Serialize the default storage session in the UI Process and add it to the
+ WebProcessCreationParameters.
+
+ * WebProcess/WebPage/win/WebPageWin.cpp:
+ (WebKit::cachedResponseForURL):
+ Use the cache associated with the current storage session and make sure the request has the
+ current storage session set on it before doing anything with it.
+
+ * WebProcess/win/WebProcessWin.cpp:
+ (WebKit::WebProcess::platformSetCacheModel):
+ Use the default storage session.
+ (WebKit::WebProcess::platformClearResourceCaches):
+ Ditto.
+ (WebKit::WebProcess::platformInitializeWebProcess):
+ Deserialize the default storage session passed in by the UI Process and hand it to the
+ ResourceHandle.
+
2011-05-11 Jia Pu <jpu@apple.com>
Reviewed by Darin Adler.
#include "WebProcessCreationParameters.h"
#include "ArgumentCoders.h"
+#if USE(CFURLSTORAGESESSIONS) && PLATFORM(WIN)
+#include "ArgumentCodersCF.h"
+#endif
namespace WebKit {
encoder->encode(cfURLCacheDiskCapacity);
encoder->encode(cfURLCacheMemoryCapacity);
encoder->encode(initialHTTPCookieAcceptPolicy);
+#if USE(CFURLSTORAGESESSIONS)
+ if (CFDataRef data = serializedDefaultStorageSession.get())
+ CoreIPC::encode(encoder, data);
+#endif // USE(CFURLSTORAGESESSIONS)
#endif
}
return false;
if (!decoder->decode(parameters.initialHTTPCookieAcceptPolicy))
return false;
+#if USE(CFURLSTORAGESESSIONS)
+ if (parameters.serializedDefaultStorageSession && !CoreIPC::decode(decoder, parameters.serializedDefaultStorageSession))
+ return false;
+#endif // USE(CFURLSTORAGESESSIONS)
#endif
return true;
#include "CacheModel.h"
#include "SandboxExtension.h"
#include "TextCheckerState.h"
+#include <wtf/RetainPtr.h>
#include <wtf/Vector.h>
#include <wtf/text/WTFString.h>
uint32_t initialHTTPCookieAcceptPolicy;
bool shouldPaintNativeControls;
-#endif
+
+#if USE(CFURLSTORAGESESSIONS)
+ RetainPtr<CFDataRef> serializedDefaultStorageSession;
+#endif // USE(CFURLSTORAGESESSIONS)
+#endif // PLATFORM(WIN)
};
} // namespace WebKit
#if USE(CFNETWORK)
#include "ArgumentCodersCF.h"
#include "PlatformCertificateInfo.h"
+#include <CFNetwork/CFURLRequestPriv.h>
#include <WebCore/CertificateCFWin.h>
+#include <WebCore/ResourceHandle.h>
#include <WebKitSystemInterface/WebKitSystemInterface.h>
#endif
CFURLRequestRef cfURLRequest = wkCFURLRequestCreateFromSerializableRepresentation(dictionary.get(), CoreIPC::tokenNullTypeRef());
if (!cfURLRequest)
return false;
+ CFMutableURLRequestRef mutableCFURLRequest = CFURLRequestCreateMutableCopy(0, cfURLRequest);
+ CFRelease(cfURLRequest);
+#if USE(CFURLSTORAGESESSIONS)
+ wkSetRequestStorageSession(WebCore::ResourceHandle::currentStorageSession(), mutableCFURLRequest);
+#endif
- resourceRequest = WebCore::ResourceRequest(cfURLRequest);
+ resourceRequest = WebCore::ResourceRequest(mutableCFURLRequest);
return true;
#else
return false;
parameters.cfURLCacheDiskCapacity = CFURLCacheDiskCapacity(cfurlCache.get());
parameters.cfURLCacheMemoryCapacity = CFURLCacheMemoryCapacity(cfurlCache.get());
- RetainPtr<CFStringRef> cfURLCachePath(AdoptCF, wkCopyFoundationCacheDirectory());
+ RetainPtr<CFStringRef> cfURLCachePath(AdoptCF, wkCopyFoundationCacheDirectory(0));
parameters.cfURLCachePath = String(cfURLCachePath.get());
// Remove the ending '\' (necessary to have CFNetwork find the Cache file).
ASSERT(parameters.cfURLCachePath.length());
#if USE(CFURLSTORAGESESSIONS)
parameters.uiProcessBundleIdentifier = String(reinterpret_cast<CFStringRef>(CFBundleGetValueForInfoDictionaryKey(CFBundleGetMainBundle(), kCFBundleIdentifierKey)));
+ parameters.serializedDefaultStorageSession.adoptCF(wkCopySerializedDefaultStorageSession());
#endif // USE(CFURLSTORAGESESSIONS)
parameters.initialHTTPCookieAcceptPolicy = m_initialHTTPCookieAcceptPolicy;
{
RetainPtr<CFURLRef> cfURL(AdoptCF, url.createCFURL());
RetainPtr<CFMutableURLRequestRef> request(AdoptCF, CFURLRequestCreateMutable(0, cfURL.get(), kCFURLRequestCachePolicyReloadIgnoringCache, 60, 0));
+#if USE(CFURLSTORAGESESSIONS)
+ wkSetRequestStorageSession(ResourceHandle::currentStorageSession(), request.get());
+#endif
RetainPtr<CFStringRef> userAgent(AdoptCF, webPage->userAgent().createCFString());
CFURLRequestSetHTTPHeaderFieldValue(request.get(), CFSTR("User-Agent"), userAgent.get());
RetainPtr<CFURLCacheRef> cache;
#if USE(CFURLSTORAGESESSIONS)
- if (CFURLStorageSessionRef storageSession = ResourceHandle::privateBrowsingStorageSession())
- cache.adoptCF(wkCopyURLCache(storageSession));
+ if (CFURLStorageSessionRef currentStorageSession = ResourceHandle::currentStorageSession())
+ cache.adoptCF(wkCopyURLCache(currentStorageSession));
else
#endif
cache.adoptCF(CFURLCacheCopySharedURLCache());
#include <WebCore/FileSystem.h>
#include <WebCore/MemoryCache.h>
#include <WebCore/PageCache.h>
+#include <WebCore/ResourceHandle.h>
#include <WebCore/Settings.h>
#include <wtf/text/WTFString.h>
void WebProcess::platformSetCacheModel(CacheModel cacheModel)
{
#if USE(CFNETWORK)
- RetainPtr<CFStringRef> cfurlCacheDirectory(AdoptCF, wkCopyFoundationCacheDirectory());
+ RetainPtr<CFStringRef> cfurlCacheDirectory;
+#if USE(CFURLSTORAGESESSIONS)
+ if (CFURLStorageSessionRef defaultStorageSession = ResourceHandle::defaultStorageSession())
+ cfurlCacheDirectory.adoptCF(wkCopyFoundationCacheDirectory(defaultStorageSession));
+ else
+#endif
+ cfurlCacheDirectory.adoptCF(wkCopyFoundationCacheDirectory(0));
+
if (!cfurlCacheDirectory)
cfurlCacheDirectory.adoptCF(WebCore::localUserSpecificStorageDirectory().createCFString());
memoryCache()->setDeadDecodedDataDeletionInterval(deadDecodedDataDeletionInterval);
pageCache()->setCapacity(pageCacheCapacity);
- RetainPtr<CFURLCacheRef> cfurlCache(AdoptCF, CFURLCacheCopySharedURLCache());
+ RetainPtr<CFURLCacheRef> cfurlCache;
+#if USE(CFURLSTORAGESESSIONS)
+ if (CFURLStorageSessionRef defaultStorageSession = ResourceHandle::defaultStorageSession())
+ cfurlCache.adoptCF(wkCopyURLCache(defaultStorageSession));
+ else
+#endif // USE(CFURLSTORAGESESSIONS)
+ cfurlCache.adoptCF(CFURLCacheCopySharedURLCache());
+
CFURLCacheSetMemoryCapacity(cfurlCache.get(), urlCacheMemoryCapacity);
CFURLCacheSetDiskCapacity(cfurlCache.get(), max<unsigned long>(urlCacheDiskCapacity, CFURLCacheDiskCapacity(cfurlCache.get()))); // Don't shrink a big disk cache, since that would cause churn.
#endif
#if USE(CFNETWORK)
if (cachesToClear == InMemoryResourceCachesOnly)
return;
- CFURLCacheRemoveAllCachedResponses(RetainPtr<CFURLCacheRef>(AdoptCF, CFURLCacheCopySharedURLCache()).get());
-#endif
+
+ RetainPtr<CFURLCacheRef> cache;
+#if USE(CFURLSTORAGESESSIONS)
+ if (CFURLStorageSessionRef defaultStorageSession = ResourceHandle::defaultStorageSession())
+ cache.adoptCF(wkCopyURLCache(defaultStorageSession));
+ else
+#endif // USE(CFURLSTORAGESESSIONS)
+ cache.adoptCF(CFURLCacheCopySharedURLCache());
+
+ CFURLCacheRemoveAllCachedResponses(cache.get());
+#endif // USE(CFNETWORK)
}
void WebProcess::platformInitializeWebProcess(const WebProcessCreationParameters& parameters, CoreIPC::ArgumentDecoder*)
setShouldPaintNativeControls(parameters.shouldPaintNativeControls);
#if USE(CFNETWORK)
+#if USE(CFURLSTORAGESESSIONS)
+ if (CFURLStorageSessionRef defaultStorageSession = wkDeserializeStorageSession(parameters.serializedDefaultStorageSession.get())) {
+ ResourceHandle::setDefaultStorageSession(defaultStorageSession);
+ return;
+ }
+#endif // USE(CFURLSTORAGESESSIONS)
+
RetainPtr<CFStringRef> cachePath(AdoptCF, parameters.cfURLCachePath.createCFString());
if (!cachePath)
return;
CFIndex cacheMemoryCapacity = parameters.cfURLCacheMemoryCapacity;
RetainPtr<CFURLCacheRef> uiProcessCache(AdoptCF, CFURLCacheCreate(kCFAllocatorDefault, cacheMemoryCapacity, cacheDiskCapacity, cachePath.get()));
CFURLCacheSetSharedURLCache(uiProcessCache.get());
-#endif
+#endif // USE(CFNETWORK)
WebCookieManager::shared().setHTTPCookieAcceptPolicy(parameters.initialHTTPCookieAcceptPolicy);
}
+2011-05-11 Jessie Berlin <jberlin@apple.com>
+
+ Reviewed by Steve Falkenburg.
+
+ [Windows WebKit2] Use cookies set in WebKit1
+ https://bugs.webkit.org/show_bug.cgi?id=60274
+
+ Take 3 after rolling out KB2465367 from my system.
+
+ * win/include/WebKitSystemInterface/WebKitSystemInterface.h:
+ * win/lib/WebKitSystemInterface.lib:
+
2011-05-11 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r86255.
CFHTTPCookieStorageRef wkGetDefaultHTTPCookieStorage();
CFHTTPCookieStorageRef wkCreateInMemoryHTTPCookieStorage();
void wkSetCFURLRequestShouldContentSniff(CFMutableURLRequestRef, bool);
-CFStringRef wkCopyFoundationCacheDirectory();
+CFStringRef wkCopyFoundationCacheDirectory(CFURLStorageSessionRef);
void wkSetClientCertificateInSSLProperties(CFMutableDictionaryRef, CFDataRef);
CFArrayRef wkCFURLRequestCopyHTTPRequestBodyParts(CFURLRequestRef);
void wkSetRequestStorageSession(CFURLStorageSessionRef, CFMutableURLRequestRef);
CFURLCacheRef wkCopyURLCache(CFURLStorageSessionRef);
CFHTTPCookieStorageRef wkCopyHTTPCookieStorage(CFURLStorageSessionRef);
+CFDataRef wkCopySerializedDefaultStorageSession();
+CFURLStorageSessionRef wkDeserializeStorageSession(CFDataRef);
CFArrayRef wkCFURLCacheCopyAllHostNamesInPersistentStore();
void wkCFURLCacheDeleteHostNamesInPersistentStore(CFArrayRef hostNames);