Changeset 179870 in webkit
- Timestamp:
- Feb 10, 2015, 8:01:30 AM (12 years ago)
- Location:
- trunk/Source/WebKit2
- Files:
-
- 10 edited
-
ChangeLog (modified) (1 diff)
-
Shared/WebProcessCreationParameters.cpp (modified) (2 diffs)
-
Shared/WebProcessCreationParameters.h (modified) (1 diff)
-
UIProcess/API/C/WKContext.cpp (modified) (1 diff)
-
UIProcess/API/C/WKContextPrivate.h (modified) (1 diff)
-
UIProcess/WebProcessPool.cpp (modified) (2 diffs)
-
UIProcess/WebProcessPool.h (modified) (2 diffs)
-
WebProcess/WebProcess.cpp (modified) (2 diffs)
-
WebProcess/WebProcess.h (modified) (1 diff)
-
WebProcess/WebProcess.messages.in (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit2/ChangeLog
r179867 r179870 1 2015-02-10 Zhuo Li <zachli@apple.com> 2 3 [WK2] Add support for registering url schemes to bypass Content Security Policy. 4 https://bugs.webkit.org/show_bug.cgi?id=140736 5 6 Reviewed by Anders Carlsson. 7 8 * Shared/WebProcessCreationParameters.cpp: 9 (WebKit::WebProcessCreationParameters::encode): 10 (WebKit::WebProcessCreationParameters::decode): 11 * Shared/WebProcessCreationParameters.h: 12 * UIProcess/API/C/WKContext.cpp: 13 (WKContextRegisterURLSchemeAsBypassingContentSecurityPolicy): 14 * UIProcess/API/C/WKContextPrivate.h: 15 * UIProcess/WebProcessPool.cpp: 16 (WebKit::WebProcessPool::createNewWebProcess): 17 (WebKit::WebProcessPool::registerURLSchemeAsBypassingContentSecurityPolicy): 18 * UIProcess/WebProcessPool.h: 19 * WebProcess/WebProcess.cpp: 20 (WebKit::WebProcess::initializeWebProcess): 21 (WebKit::WebProcess::registerURLSchemeAsBypassingContentSecurityPolicy): 22 * WebProcess/WebProcess.h: 23 * WebProcess/WebProcess.messages.in: 24 1 25 2015-02-10 Sanghyup Lee <sh53.lee@samsung.com> 2 26 -
trunk/Source/WebKit2/Shared/WebProcessCreationParameters.cpp
r179368 r179870 83 83 encoder << urlSchemesRegistererdAsEmptyDocument; 84 84 encoder << urlSchemesRegisteredAsSecure; 85 encoder << urlSchemesRegisteredAsBypassingContentSecurityPolicy; 85 86 encoder << urlSchemesForWhichDomainRelaxationIsForbidden; 86 87 encoder << urlSchemesRegisteredAsLocal; … … 188 189 if (!decoder.decode(parameters.urlSchemesRegisteredAsSecure)) 189 190 return false; 191 if (!decoder.decode(parameters.urlSchemesRegisteredAsBypassingContentSecurityPolicy)) 192 return false; 190 193 if (!decoder.decode(parameters.urlSchemesForWhichDomainRelaxationIsForbidden)) 191 194 return false; -
trunk/Source/WebKit2/Shared/WebProcessCreationParameters.h
r179368 r179870 90 90 Vector<String> urlSchemesRegistererdAsEmptyDocument; 91 91 Vector<String> urlSchemesRegisteredAsSecure; 92 Vector<String> urlSchemesRegisteredAsBypassingContentSecurityPolicy; 92 93 Vector<String> urlSchemesForWhichDomainRelaxationIsForbidden; 93 94 Vector<String> urlSchemesRegisteredAsLocal; -
trunk/Source/WebKit2/UIProcess/API/C/WKContext.cpp
r178685 r179870 380 380 } 381 381 382 void WKContextRegisterURLSchemeAsBypassingContentSecurityPolicy(WKContextRef contextRef, WKStringRef urlScheme) 383 { 384 toImpl(contextRef)->registerURLSchemeAsBypassingContentSecurityPolicy(toImpl(urlScheme)->string()); 385 } 386 382 387 void WKContextRegisterURLSchemeAsCachePartitioned(WKContextRef contextRef, WKStringRef urlScheme) 383 388 { -
trunk/Source/WebKit2/UIProcess/API/C/WKContextPrivate.h
r174369 r179870 53 53 WK_EXPORT void WKContextRegisterURLSchemeAsSecure(WKContextRef context, WKStringRef urlScheme); 54 54 55 WK_EXPORT void WKContextRegisterURLSchemeAsBypassingContentSecurityPolicy(WKContextRef context, WKStringRef urlScheme); 56 55 57 WK_EXPORT void WKContextRegisterURLSchemeAsCachePartitioned(WKContextRef context, WKStringRef urlScheme); 56 58 -
trunk/Source/WebKit2/UIProcess/WebProcessPool.cpp
r179754 r179870 638 638 copyToVector(m_schemesToRegisterAsEmptyDocument, parameters.urlSchemesRegistererdAsEmptyDocument); 639 639 copyToVector(m_schemesToRegisterAsSecure, parameters.urlSchemesRegisteredAsSecure); 640 copyToVector(m_schemesToRegisterAsBypassingContentSecurityPolicy, parameters.urlSchemesRegisteredAsBypassingContentSecurityPolicy); 640 641 copyToVector(m_schemesToSetDomainRelaxationForbiddenFor, parameters.urlSchemesForWhichDomainRelaxationIsForbidden); 641 642 copyToVector(m_schemesToRegisterAsLocal, parameters.urlSchemesRegisteredAsLocal); … … 975 976 } 976 977 978 void WebProcessPool::registerURLSchemeAsBypassingContentSecurityPolicy(const String& urlScheme) 979 { 980 m_schemesToRegisterAsBypassingContentSecurityPolicy.add(urlScheme); 981 sendToAllProcesses(Messages::WebProcess::RegisterURLSchemeAsBypassingContentSecurityPolicy(urlScheme)); 982 } 983 977 984 void WebProcessPool::setDomainRelaxationForbiddenForURLScheme(const String& urlScheme) 978 985 { -
trunk/Source/WebKit2/UIProcess/WebProcessPool.h
r179754 r179870 197 197 void registerURLSchemeAsEmptyDocument(const String&); 198 198 void registerURLSchemeAsSecure(const String&); 199 void registerURLSchemeAsBypassingContentSecurityPolicy(const String&); 199 200 void setDomainRelaxationForbiddenForURLScheme(const String&); 200 201 void setCanHandleHTTPSServerTrustEvaluation(bool); … … 454 455 HashSet<String> m_schemesToRegisterAsEmptyDocument; 455 456 HashSet<String> m_schemesToRegisterAsSecure; 457 HashSet<String> m_schemesToRegisterAsBypassingContentSecurityPolicy; 456 458 HashSet<String> m_schemesToSetDomainRelaxationForbiddenFor; 457 459 HashSet<String> m_schemesToRegisterAsLocal; -
trunk/Source/WebKit2/WebProcess/WebProcess.cpp
r179489 r179870 314 314 registerURLSchemeAsSecure(parameters.urlSchemesRegisteredAsSecure[i]); 315 315 316 for (size_t i = 0; i < parameters.urlSchemesRegisteredAsBypassingContentSecurityPolicy.size(); ++i) 317 registerURLSchemeAsBypassingContentSecurityPolicy(parameters.urlSchemesRegisteredAsBypassingContentSecurityPolicy[i]); 318 316 319 for (size_t i = 0; i < parameters.urlSchemesForWhichDomainRelaxationIsForbidden.size(); ++i) 317 320 setDomainRelaxationForbiddenForURLScheme(parameters.urlSchemesForWhichDomainRelaxationIsForbidden[i]); … … 414 417 { 415 418 SchemeRegistry::registerURLSchemeAsSecure(urlScheme); 419 } 420 421 void WebProcess::registerURLSchemeAsBypassingContentSecurityPolicy(const String& urlScheme) const 422 { 423 SchemeRegistry::registerURLSchemeAsBypassingContentSecurityPolicy(urlScheme); 416 424 } 417 425 -
trunk/Source/WebKit2/WebProcess/WebProcess.h
r179409 r179870 217 217 void registerURLSchemeAsEmptyDocument(const String&); 218 218 void registerURLSchemeAsSecure(const String&) const; 219 void registerURLSchemeAsBypassingContentSecurityPolicy(const String&) const; 219 220 void setDomainRelaxationForbiddenForURLScheme(const String&) const; 220 221 void registerURLSchemeAsLocal(const String&) const; -
trunk/Source/WebKit2/WebProcess/WebProcess.messages.in
r178634 r179870 31 31 RegisterURLSchemeAsEmptyDocument(String scheme) 32 32 RegisterURLSchemeAsSecure(String scheme) 33 RegisterURLSchemeAsBypassingContentSecurityPolicy(String scheme) 33 34 SetDomainRelaxationForbiddenForURLScheme(String scheme) 34 35 RegisterURLSchemeAsLocal(String scheme)
Note:
See TracChangeset
for help on using the changeset viewer.