Changeset 111361 in webkit for trunk/Source/WebKit/gtk/ChangeLog


Ignore:
Timestamp:
Mar 19, 2012, 10:58:36 PM (14 years ago)
Author:
[email protected]
Message:

Remove support for "magic" iframe
https://bugs.webkit.org/show_bug.cgi?id=81590

Reviewed by Eric Seidel.

Source/WebCore:

This patch removes support for "magic" iframe, which previously allowed
an iframe to be transfered from one document to another without
reloading the iframe. The idea behind this feature was to let sites
create "pop out" windows that could outlive their parents by
transfering state to these windows via these magic iframes.

Unforuntately, this feature was never implemented by other browsers and
has been the source of a series of security vulnerabilities. Although
we have fixed each vulnerability as it has been discovered, the feature
is still a complex corner case that isn't widely exercised on the web.
For that reason, it's likely to have more vulnerabilities in the
future.

I'm not aware of any web sites that use this feature anymore. There
were a handful of them, but we appear to have been successful in
evangalizing them to move away from "magic" iframe.

  • dom/Document.cpp:

(WebCore::Document::adoptNode):

  • html/HTMLFrameElementBase.cpp:

(WebCore):
(WebCore::HTMLFrameElementBase::HTMLFrameElementBase):
(WebCore::HTMLFrameElementBase::insertedIntoDocument):

  • html/HTMLFrameElementBase.h:

(HTMLFrameElementBase):

  • loader/DocumentLoader.cpp:

(WebCore):

  • loader/DocumentLoader.h:

(DocumentLoader):

  • loader/EmptyClients.h:

(WebCore::EmptyFrameLoaderClient::createFrame):

  • loader/FrameLoader.cpp:

(WebCore):

  • loader/FrameLoader.h:

(FrameLoader):

  • loader/FrameLoaderClient.h:

(FrameLoaderClient):

  • loader/ResourceLoadNotifier.cpp:

(WebCore):

  • loader/ResourceLoadNotifier.h:

(ResourceLoadNotifier):

  • page/Frame.cpp:

(WebCore):

  • page/Frame.h:

(Frame):

Source/WebKit/blackberry:

Remove FrameLoaderClient methods that no longer exist.

  • WebCoreSupport/FrameLoaderClientBlackBerry.cpp:

(WebCore):

  • WebCoreSupport/FrameLoaderClientBlackBerry.h:

(FrameLoaderClientBlackBerry):
(WebCore::FrameLoaderClientBlackBerry::didDetectXSS):

Source/WebKit/chromium:

Remove FrameLoaderClient methods that no longer exist.

  • public/WebFrameClient.h:

(WebFrameClient):

  • src/FrameLoaderClientImpl.cpp:

(WebKit):

  • src/FrameLoaderClientImpl.h:

(FrameLoaderClientImpl):

Source/WebKit/efl:

Remove FrameLoaderClient methods that no longer exist.

  • WebCoreSupport/FrameLoaderClientEfl.cpp:

(WebCore):

  • WebCoreSupport/FrameLoaderClientEfl.h:

(FrameLoaderClientEfl):

Source/WebKit/gtk:

Remove FrameLoaderClient methods that no longer exist.

  • WebCoreSupport/FrameLoaderClientGtk.cpp:

(WebKit):

  • WebCoreSupport/FrameLoaderClientGtk.h:

(FrameLoaderClient):

Source/WebKit/mac:

Remove FrameLoaderClient methods that no longer exist.

  • WebCoreSupport/WebFrameLoaderClient.h:
  • WebCoreSupport/WebFrameLoaderClient.mm:

Source/WebKit/qt:

Remove FrameLoaderClient methods that no longer exist.

  • WebCoreSupport/FrameLoaderClientQt.cpp:

(WebCore):

  • WebCoreSupport/FrameLoaderClientQt.h:

(FrameLoaderClientQt):

Source/WebKit/win:

Remove FrameLoaderClient methods that no longer exist.

  • WebCoreSupport/WebFrameLoaderClient.cpp:
  • WebCoreSupport/WebFrameLoaderClient.h:

(WebFrameLoaderClient):

Source/WebKit/wince:

Remove FrameLoaderClient methods that no longer exist.

  • WebCoreSupport/FrameLoaderClientWinCE.cpp:

(WebKit):

  • WebCoreSupport/FrameLoaderClientWinCE.h:

(FrameLoaderClientWinCE):

Source/WebKit/wx:

Remove FrameLoaderClient methods that no longer exist.

  • WebKitSupport/FrameLoaderClientWx.cpp:

(WebCore):

  • WebKitSupport/FrameLoaderClientWx.h:

(FrameLoaderClientWx):

Source/WebKit2:

Remove FrameLoaderClient methods that no longer exist.

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit):

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.h:

LayoutTests:

Remove tests of magic iframe. These tests don't reall make sense to
keep without the feature.

  • fast/frames/adopt-iframe-into-itself-expected.txt: Added.
  • fast/frames/adopt-iframe-into-itself.html: Added.
    • I've added a test about adopting an iframe into itself. We might already have a test for this, but it covers a mistake I made in an earlier iteration of this patch.
  • fast/frames/iframe-reparenting-adopt-node-expected.txt: Removed.
  • fast/frames/iframe-reparenting-adopt-node.html: Removed.
  • fast/frames/iframe-reparenting-embed-elements-expected.txt: Removed.
  • fast/frames/iframe-reparenting-embed-elements.html: Removed.
  • fast/frames/iframe-reparenting-expected.txt: Removed.
  • fast/frames/iframe-reparenting-fail-load-expected.txt: Removed.
  • fast/frames/iframe-reparenting-fail-load.html: Removed.
  • fast/frames/iframe-reparenting-new-page-expected.txt: Removed.
  • fast/frames/iframe-reparenting-new-page.html: Removed.
  • fast/frames/iframe-reparenting-plugins-expected.txt: Removed.
  • fast/frames/iframe-reparenting-plugins.html: Removed.
  • fast/frames/iframe-reparenting.html: Removed.
  • fast/frames/resources/iframe-reparenting-adopt-node-iframe-content.html: Removed.
  • fast/frames/resources/iframe-reparenting-adopt-node-new-page.html: Removed.
  • fast/frames/resources/iframe-reparenting-embed-frame1.html: Removed.
  • fast/frames/resources/iframe-reparenting-embed-iframe.html: Removed.
  • fast/frames/resources/iframe-reparenting-frame1.html: Removed.
  • fast/frames/resources/iframe-reparenting-frame2.html: Removed.
  • fast/frames/resources/iframe-reparenting-iframe-content.html: Removed.
  • fast/frames/resources/iframe-reparenting-new-page-1.html: Removed.
  • fast/frames/resources/iframe-reparenting-new-page-2.html: Removed.
  • fast/frames/resources/iframe-reparenting-new-page-iframe.html: Removed.
  • fast/frames/resources/iframe-reparenting-plugins-iframe-content.html: Removed.
  • fast/frames/resources/iframe-reparenting-plugins-new-page.html: Removed.
  • fast/frames/script-tests/iframe-reparenting-new-page.js: Removed.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit/gtk/ChangeLog

    r111340 r111361  
     12012-03-19  Adam Barth  <[email protected]>
     2
     3        Remove support for "magic" iframe
     4        https://bugs.webkit.org/show_bug.cgi?id=81590
     5
     6        Reviewed by Eric Seidel.
     7
     8        Remove FrameLoaderClient methods that no longer exist.
     9
     10        * WebCoreSupport/FrameLoaderClientGtk.cpp:
     11        (WebKit):
     12        * WebCoreSupport/FrameLoaderClientGtk.h:
     13        (FrameLoaderClient):
     14
    1152012-03-19  Gustavo Noronha Silva  <[email protected]>
    216
Note: See TracChangeset for help on using the changeset viewer.