Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(906)

Side by Side Diff: third_party/WebKit/Source/core/loader/FrameFetchContext.cpp

Issue 1632523002: `<link rel=preload>` with no `as` should be subject to connect-src (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix unit tests Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2013 Google Inc. All rights reserved. 2 * Copyright (C) 2013 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 410 matching lines...) Expand 10 before | Expand all | Expand 10 after
421 // types of resources, like Images, Scripts, and CSS, can be loaded from 421 // types of resources, like Images, Scripts, and CSS, can be loaded from
422 // any URL. 422 // any URL.
423 switch (type) { 423 switch (type) {
424 case Resource::MainResource: 424 case Resource::MainResource:
425 case Resource::Image: 425 case Resource::Image:
426 case Resource::CSSStyleSheet: 426 case Resource::CSSStyleSheet:
427 case Resource::Script: 427 case Resource::Script:
428 case Resource::Font: 428 case Resource::Font:
429 case Resource::Raw: 429 case Resource::Raw:
430 case Resource::LinkPrefetch: 430 case Resource::LinkPrefetch:
431 case Resource::LinkPreload:
431 case Resource::LinkSubresource: 432 case Resource::LinkSubresource:
432 case Resource::TextTrack: 433 case Resource::TextTrack:
433 case Resource::ImportResource: 434 case Resource::ImportResource:
434 case Resource::Media: 435 case Resource::Media:
435 case Resource::Manifest: 436 case Resource::Manifest:
436 // By default these types of resources can be loaded from any origin. 437 // By default these types of resources can be loaded from any origin.
437 // FIXME: Are we sure about Resource::Font? 438 // FIXME: Are we sure about Resource::Font?
438 if (originRestriction == FetchRequest::RestrictToSameOrigin && !security Origin->canRequest(url)) { 439 if (originRestriction == FetchRequest::RestrictToSameOrigin && !security Origin->canRequest(url)) {
439 printAccessDeniedMessage(url); 440 printAccessDeniedMessage(url);
440 return ResourceRequestBlockedReasonOrigin; 441 return ResourceRequestBlockedReasonOrigin;
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
498 if (!shouldBypassMainWorldCSP && !csp->allowImageFromSource(url, redirec tStatus, cspReporting)) 499 if (!shouldBypassMainWorldCSP && !csp->allowImageFromSource(url, redirec tStatus, cspReporting))
499 return ResourceRequestBlockedReasonCSP; 500 return ResourceRequestBlockedReasonCSP;
500 break; 501 break;
501 case Resource::Font: { 502 case Resource::Font: {
502 ASSERT(ContentSecurityPolicy::isFontResource(resourceRequest)); 503 ASSERT(ContentSecurityPolicy::isFontResource(resourceRequest));
503 ASSERT(csp); 504 ASSERT(csp);
504 if (!shouldBypassMainWorldCSP && !csp->allowFontFromSource(url, redirect Status, cspReporting)) 505 if (!shouldBypassMainWorldCSP && !csp->allowFontFromSource(url, redirect Status, cspReporting))
505 return ResourceRequestBlockedReasonCSP; 506 return ResourceRequestBlockedReasonCSP;
506 break; 507 break;
507 } 508 }
509 case Resource::LinkPreload:
510 ASSERT(csp);
511 if (!shouldBypassMainWorldCSP && !csp->allowConnectToSource(url, redirec tStatus, cspReporting))
512 return ResourceRequestBlockedReasonCSP;
513 break;
508 case Resource::MainResource: 514 case Resource::MainResource:
509 case Resource::Raw: 515 case Resource::Raw:
510 case Resource::LinkPrefetch: 516 case Resource::LinkPrefetch:
511 case Resource::LinkSubresource: 517 case Resource::LinkSubresource:
512 case Resource::Manifest: 518 case Resource::Manifest:
513 break; 519 break;
514 case Resource::Media: 520 case Resource::Media:
515 case Resource::TextTrack: 521 case Resource::TextTrack:
516 ASSERT(ContentSecurityPolicy::isMediaResource(resourceRequest)); 522 ASSERT(ContentSecurityPolicy::isMediaResource(resourceRequest));
517 ASSERT(csp); 523 ASSERT(csp);
(...skipping 265 matching lines...) Expand 10 before | Expand all | Expand 10 after
783 } 789 }
784 790
785 DEFINE_TRACE(FrameFetchContext) 791 DEFINE_TRACE(FrameFetchContext)
786 { 792 {
787 visitor->trace(m_document); 793 visitor->trace(m_document);
788 visitor->trace(m_documentLoader); 794 visitor->trace(m_documentLoader);
789 FetchContext::trace(visitor); 795 FetchContext::trace(visitor);
790 } 796 }
791 797
792 } // namespace blink 798 } // namespace blink
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/loader/DocumentLoader.cpp ('k') | third_party/WebKit/Source/core/loader/LinkLoader.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698