Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 82b274a02e255e0c076e27038aa09c55114e8af8
      
https://github.com/WebKit/WebKit/commit/82b274a02e255e0c076e27038aa09c55114e8af8
  Author: Chris Dumez <[email protected]>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    R LayoutTests/http/tests/misc/ftp-eplf-directory-expected.txt
    R LayoutTests/http/tests/misc/ftp-eplf-directory.py
    M LayoutTests/platform/gtk/TestExpectations
    M LayoutTests/platform/win/TestExpectations
    M LayoutTests/platform/wpe/TestExpectations
    M Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml
    M Source/WTF/wtf/PlatformEnable.h
    M Source/WebCore/SaferCPPExpectations/UncountedCallArgsCheckerExpectations
    M Source/WebCore/Sources.txt
    M Source/WebCore/WebCore.xcodeproj/project.pbxproj
    M Source/WebCore/dom/DOMImplementation.cpp
    R Source/WebCore/html/FTPDirectoryDocument.cpp
    R
Source/WebCore/html/FTPDirectoryDocument.h
    M Source/WebCore/loader/DocumentLoader.cpp
    R Source/WebCore/loader/FTPDirectoryParser.cpp
    R Source/WebCore/loader/FTPDirectoryParser.h
    M Source/WebCore/platform/MIMETypeRegistry.cpp
    M Source/WebCore/platform/network/curl/CurlContext.cpp
    M Source/WebKit/UIProcess/API/C/WKPreferences.cpp
    M Source/WebKit/UIProcess/API/C/WKPreferencesRefPrivate.h
    M Source/WebKitLegacy/mac/WebView/WebPreferenceKeysPrivate.h
    M Source/WebKitLegacy/mac/WebView/WebPreferences.mm
    M Source/WebKitLegacy/mac/WebView/WebPreferencesPrivate.h
    M Source/cmake/OptionsGTK.cmake
    M Source/cmake/OptionsPlayStation.cmake
    M Source/cmake/OptionsWPE.cmake
    M Source/cmake/OptionsWin.cmake
    M Source/cmake/WebKitFeatures.cmake
    M Tools/Scripts/webkitperl/FeatureList.pm
    M Tools/lldb/lldb_webkit.py

  Log Message:
  -----------
  Remove dead FTP directory listing support
(ENABLE_FTPDIR)
https://bugs.webkit.org/show_bug.cgi?id=318108

Reviewed by Brent Fulgham.

The FTP directory listing feature (FTPDirectoryDocument / FTPDirectoryParser) 
was
effectively dead code. It could only be reached when a response carried the
"application/x-ftp-directory" MIME type *and* the hidden, off-by-default
forceFTPDirectoryListings preference was enabled. WebKit no longer has an FTP
loader to produce that MIME type organically, so on Apple ports the feature was
only ever exercised by a single test that flipped the test-only preference, and 
it
was already disabled (ENABLE_FTPDIR OFF) on the GTK, WPE, WinCairo, and 
PlayStation
ports.

Remove the parser, the document, the ENABLE_FTPDIR build flag, the two 
associated
(now-dead) preferences, and the lone layout test. The separate, live FTPEnabled
 NetworkProcess gate that blocks ftp:// loads is left untouched.

The WKPreferences C SPI for these preferences is kept as deprecated no-op stubs 
to
preserve
binary compatibility, matching how other removed preferences are handled.

* LayoutTests/http/tests/misc/ftp-eplf-directory-expected.txt: Removed.
* LayoutTests/http/tests/misc/ftp-eplf-directory.py: Removed.
* LayoutTests/platform/gtk/TestExpectations:
* LayoutTests/platform/win/TestExpectations:
* LayoutTests/platform/wpe/TestExpectations:
* Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml:
* Source/WTF/wtf/PlatformEnable.h:
* Source/WebCore/Sources.txt:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/dom/DOMImplementation.cpp:
(WebCore::DOMImplementation::createDocument):
* Source/WebCore/html/FTPDirectoryDocument.cpp: Removed.
* Source/WebCore/html/FTPDirectoryDocument.h: Removed.
* Source/WebCore/loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::responseReceived):
* Source/WebCore/loader/FTPDirectoryParser.cpp: Removed.
* Source/WebCore/loader/FTPDirectoryParser.h: Removed.
*
Source/WebCore/platform/MIMETypeRegistry.cpp:
(WebCore::MIMETypeRegistry::supportedNonImageMIMETypes):
* Source/WebCore/platform/network/curl/CurlContext.cpp:
(WebCore::CurlHandle::enableAllowedProtocols):
* Source/WebKit/UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesSetForceFTPDirectoryListings):
(WKPreferencesGetForceFTPDirectoryListings):
(WKPreferencesSetFTPDirectoryTemplatePath):
(WKPreferencesCopyFTPDirectoryTemplatePath):
* Source/WebKit/UIProcess/API/C/WKPreferencesRefPrivate.h:
* Source/WebKitLegacy/mac/WebView/WebPreferenceKeysPrivate.h:
* Source/WebKitLegacy/mac/WebView/WebPreferences.mm:
(-[WebPreferences _ftpDirectoryTemplatePath]): Deleted.
(-[WebPreferences _setFTPDirectoryTemplatePath:]): Deleted.
(-[WebPreferences _forceFTPDirectoryListings]): Deleted.
(-[WebPreferences _setForceFTPDirectoryListings:]): Deleted.
* Source/WebKitLegacy/mac/WebView/WebPreferencesPrivate.h:
* Source/cmake/OptionsGTK.cmake:
* Source/cmake/OptionsPlayStation.cmake:
*
Source/cmake/OptionsWPE.cmake:
* Source/cmake/OptionsWin.cmake:
* Source/cmake/WebKitFeatures.cmake:
* Tools/Scripts/webkitperl/FeatureList.pm:
* Tools/lldb/lldb_webkit.py:
(__lldb_init_module):

Canonical link: 
https://flagged.apple.com:443/proxy?t2=Dr4Z6J5lR7&o=aHR0cHM6Ly9jb21taXRzLndlYmtpdC5vcmcvMzE2MjEyQG1haW4=&emid=c1a3788c-1605-4bc0-a6c6-79e627540444&c=11



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to