| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights | 2 * Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights |
| 3 * reserved. | 3 * reserved. |
| 4 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) | 4 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) |
| 5 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. | 5 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. |
| 6 * (http://www.torchmobile.com/) | 6 * (http://www.torchmobile.com/) |
| 7 * Copyright (C) 2008 Alp Toker <alp@atoker.com> | 7 * Copyright (C) 2008 Alp Toker <alp@atoker.com> |
| 8 * Copyright (C) Research In Motion Limited 2009. All rights reserved. | 8 * Copyright (C) Research In Motion Limited 2009. All rights reserved. |
| 9 * Copyright (C) 2011 Kris Jordan <krisjordan@gmail.com> | 9 * Copyright (C) 2011 Kris Jordan <krisjordan@gmail.com> |
| 10 * Copyright (C) 2011 Google Inc. All rights reserved. | 10 * Copyright (C) 2011 Google Inc. All rights reserved. |
| (...skipping 1614 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1625 type, | 1625 type, |
| 1626 frameLoadRequest.resourceRequest().httpBody() || frameLoadRequest.form(), | 1626 frameLoadRequest.resourceRequest().httpBody() || frameLoadRequest.form(), |
| 1627 frameLoadRequest.triggeringEvent()); | 1627 frameLoadRequest.triggeringEvent()); |
| 1628 frameLoadRequest.resourceRequest().setRequestContext( | 1628 frameLoadRequest.resourceRequest().setRequestContext( |
| 1629 determineRequestContextFromNavigationType(navigationType)); | 1629 determineRequestContextFromNavigationType(navigationType)); |
| 1630 frameLoadRequest.resourceRequest().setFrameType( | 1630 frameLoadRequest.resourceRequest().setFrameType( |
| 1631 m_frame->isMainFrame() ? WebURLRequest::FrameTypeTopLevel | 1631 m_frame->isMainFrame() ? WebURLRequest::FrameTypeTopLevel |
| 1632 : WebURLRequest::FrameTypeNested); | 1632 : WebURLRequest::FrameTypeNested); |
| 1633 ResourceRequest& request = frameLoadRequest.resourceRequest(); | 1633 ResourceRequest& request = frameLoadRequest.resourceRequest(); |
| 1634 | 1634 |
| 1635 // Record the latest requiredCSP value that will be used when sending this | |
| 1636 // request. | |
| 1637 recordLatestRequiredCSP(); | |
| 1638 modifyRequestForCSP(request, nullptr); | |
| 1639 if (!shouldContinueForNavigationPolicy( | 1635 if (!shouldContinueForNavigationPolicy( |
| 1640 request, frameLoadRequest.substituteData(), nullptr, | 1636 request, frameLoadRequest.substituteData(), nullptr, |
| 1641 frameLoadRequest.shouldCheckMainWorldContentSecurityPolicy(), | 1637 frameLoadRequest.shouldCheckMainWorldContentSecurityPolicy(), |
| 1642 navigationType, navigationPolicy, | 1638 navigationType, navigationPolicy, |
| 1643 type == FrameLoadTypeReplaceCurrentItem, | 1639 type == FrameLoadTypeReplaceCurrentItem, |
| 1644 frameLoadRequest.clientRedirect() == | 1640 frameLoadRequest.clientRedirect() == |
| 1645 ClientRedirectPolicy::ClientRedirect, | 1641 ClientRedirectPolicy::ClientRedirect, |
| 1646 frameLoadRequest.form())) | 1642 frameLoadRequest.form())) |
| 1647 return; | 1643 return; |
| 1648 | 1644 |
| 1645 // Record the latest requiredCSP value that will be used when sending this |
| 1646 // request. |
| 1647 recordLatestRequiredCSP(); |
| 1648 modifyRequestForCSP(request, nullptr); |
| 1649 |
| 1649 m_frame->document()->cancelParsing(); | 1650 m_frame->document()->cancelParsing(); |
| 1650 detachDocumentLoader(m_provisionalDocumentLoader); | 1651 detachDocumentLoader(m_provisionalDocumentLoader); |
| 1651 | 1652 |
| 1652 // beforeunload fired above, and detaching a DocumentLoader can fire events, | 1653 // beforeunload fired above, and detaching a DocumentLoader can fire events, |
| 1653 // which can detach this frame. | 1654 // which can detach this frame. |
| 1654 if (!m_frame->host()) | 1655 if (!m_frame->host()) |
| 1655 return; | 1656 return; |
| 1656 | 1657 |
| 1657 m_provisionalDocumentLoader = client()->createDocumentLoader( | 1658 m_provisionalDocumentLoader = client()->createDocumentLoader( |
| 1658 m_frame, request, frameLoadRequest.substituteData().isValid() | 1659 m_frame, request, frameLoadRequest.substituteData().isValid() |
| (...skipping 218 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1877 | 1878 |
| 1878 // If we don't yet have an |m_document| (because we're loading an iframe, for | 1879 // If we don't yet have an |m_document| (because we're loading an iframe, for |
| 1879 // instance), check the FrameLoader's policy. | 1880 // instance), check the FrameLoader's policy. |
| 1880 WebInsecureRequestPolicy relevantPolicy = | 1881 WebInsecureRequestPolicy relevantPolicy = |
| 1881 document ? document->getInsecureRequestPolicy() | 1882 document ? document->getInsecureRequestPolicy() |
| 1882 : getInsecureRequestPolicy(); | 1883 : getInsecureRequestPolicy(); |
| 1883 SecurityContext::InsecureNavigationsSet* relevantNavigationSet = | 1884 SecurityContext::InsecureNavigationsSet* relevantNavigationSet = |
| 1884 document ? document->insecureNavigationsToUpgrade() | 1885 document ? document->insecureNavigationsToUpgrade() |
| 1885 : insecureNavigationsToUpgrade(); | 1886 : insecureNavigationsToUpgrade(); |
| 1886 | 1887 |
| 1888 resourceRequest.setInsecurePolicy(relevantPolicy); |
| 1889 |
| 1887 if (url.protocolIs("http") && relevantPolicy & kUpgradeInsecureRequests) { | 1890 if (url.protocolIs("http") && relevantPolicy & kUpgradeInsecureRequests) { |
| 1888 // We always upgrade requests that meet any of the following criteria: | 1891 // We always upgrade requests that meet any of the following criteria: |
| 1889 // | 1892 // |
| 1890 // 1. Are for subresources (including nested frames). | 1893 // 1. Are for subresources (including nested frames). |
| 1891 // 2. Are form submissions. | 1894 // 2. Are form submissions. |
| 1892 // 3. Whose hosts are contained in the document's InsecureNavigationSet. | 1895 // 3. Whose hosts are contained in the document's InsecureNavigationSet. |
| 1893 if (resourceRequest.frameType() == WebURLRequest::FrameTypeNone || | 1896 if (resourceRequest.frameType() == WebURLRequest::FrameTypeNone || |
| 1894 resourceRequest.frameType() == WebURLRequest::FrameTypeNested || | 1897 resourceRequest.frameType() == WebURLRequest::FrameTypeNested || |
| 1895 resourceRequest.requestContext() == WebURLRequest::RequestContextForm || | 1898 resourceRequest.requestContext() == WebURLRequest::RequestContextForm || |
| 1896 (!url.host().isNull() && | 1899 (!url.host().isNull() && |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1928 m_documentLoader ? m_documentLoader->url() : String()); | 1931 m_documentLoader ? m_documentLoader->url() : String()); |
| 1929 return tracedValue; | 1932 return tracedValue; |
| 1930 } | 1933 } |
| 1931 | 1934 |
| 1932 inline void FrameLoader::takeObjectSnapshot() const { | 1935 inline void FrameLoader::takeObjectSnapshot() const { |
| 1933 TRACE_EVENT_OBJECT_SNAPSHOT_WITH_ID("loading", "FrameLoader", this, | 1936 TRACE_EVENT_OBJECT_SNAPSHOT_WITH_ID("loading", "FrameLoader", this, |
| 1934 toTracedValue()); | 1937 toTracedValue()); |
| 1935 } | 1938 } |
| 1936 | 1939 |
| 1937 } // namespace blink | 1940 } // namespace blink |
| OLD | NEW |