New issue
Advanced search Search tips

Issue 797292 link

Starred by 4 users

Issue metadata

Status: Fixed
Owner:
Closed: May 21
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug
Proj-Servicification

Blocking:
issue 598073



Sign in to add a comment

Should be possible to navigate to filesystem URLs

Project Member Reported by jochen@chromium.org, Dec 22 2017

Issue description

without the network service, such a navigation will work if it results in a download, e.g., when you have a filesystem URL pointing to an .exe file, it'll be downloaded.

With the network service, it fails the navigation.
 
Project Member

Comment 1 by bugdroid1@chromium.org, Jan 2 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b

commit f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b
Author: Jochen Eisinger <jochen@chromium.org>
Date: Tue Jan 02 14:30:18 2018

Use navigation for <a download>

We pass the suggested filename along with the request and use that
as a signal that the navigation should result in a download.

The next step will be to ignore this hint for cross origin downloads,
so that only files with a content-disposition will end up being
downloaded.

Bug:  714373 , 797292 
Cq-Include-Trybots: master.tryserver.chromium.linux:linux_mojo;master.tryserver.chromium.linux:linux_site_isolation
Change-Id: I508d7abe1cba9b75d65132b0688984cdebfc6fd4
Reviewed-on: https://chromium-review.googlesource.com/758236
Commit-Queue: Jochen Eisinger <jochen@chromium.org>
Reviewed-by: Camille Lamy <clamy@chromium.org>
Reviewed-by: Jialiu Lin <jialiul@chromium.org>
Reviewed-by: Mike West <mkwst@chromium.org>
Reviewed-by: Min Qin(OOO 12/7-1/10) <qinmin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#526475}
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/chrome/browser/apps/guest_view/web_view_browsertest.cc
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/chrome/browser/download/download_browsertest.cc
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/chrome/browser/extensions/api/web_navigation/web_navigation_apitest.cc
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/chrome/browser/safe_browsing/safe_browsing_navigation_observer_browsertest.cc
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/chrome/test/data/extensions/api_test/webnavigation/download/test_download.js
[add] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/chrome/test/data/extensions/platform_apps/web_view/download/expect-allow.zip
[add] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/chrome/test/data/extensions/platform_apps/web_view/download/expect-deny.zip
[add] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/chrome/test/data/extensions/platform_apps/web_view/download/expect-ignore.zip
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/content/browser/browser_side_navigation_browsertest.cc
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/content/browser/devtools/devtools_url_interceptor_request_job.cc
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/content/browser/download/download_browsertest.cc
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/content/browser/download/download_manager_impl.cc
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/content/browser/download/download_manager_impl.h
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/content/browser/download/download_request_core.cc
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/content/browser/download/resource_downloader.cc
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/content/browser/download/resource_downloader.h
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/content/browser/frame_host/navigation_request.cc
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/content/browser/loader/mime_sniffing_resource_handler.cc
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/content/browser/loader/navigation_url_loader_network_service.cc
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/content/browser/loader/navigation_url_loader_network_service.h
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/content/browser/loader/navigation_url_loader_network_service_unittest.cc
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/content/browser/loader/navigation_url_loader_unittest.cc
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/content/browser/loader/resource_dispatcher_host_impl.cc
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/content/browser/loader/resource_dispatcher_host_unittest.cc
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/content/browser/loader/resource_request_info_impl.cc
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/content/browser/loader/resource_request_info_impl.h
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/content/common/navigation_params.mojom
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/content/public/test/navigation_simulator.cc
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/content/renderer/render_frame_impl.cc
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/content/shell/test_runner/test_runner.cc
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/content/shell/test_runner/web_frame_test_client.cc
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/content/test/data/download/download-attribute-blob.html
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/content/test/test_render_frame_host.cc
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/testing/buildbot/filters/mojo.fyi.network_browser_tests.filter
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/third_party/WebKit/LayoutTests/editing/pasteboard/drag-files-to-editable-element-expected.txt
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/third_party/WebKit/LayoutTests/editing/pasteboard/drag-files-to-editable-element.html
[add] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/third_party/WebKit/LayoutTests/external/wpt/html/semantics/embedded-content/the-area-element/area-download-click-expected.txt
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/third_party/WebKit/LayoutTests/external/wpt/html/semantics/embedded-content/the-area-element/area-download-click.html
[add] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/third_party/WebKit/LayoutTests/external/wpt/html/semantics/embedded-content/the-area-element/resources/area-download-click.html
[add] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/third_party/WebKit/LayoutTests/external/wpt/html/semantics/text-level-semantics/the-a-element/a-download-click-404-expected.txt
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/third_party/WebKit/LayoutTests/external/wpt/html/semantics/text-level-semantics/the-a-element/a-download-click-404.html
[add] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/third_party/WebKit/LayoutTests/external/wpt/html/semantics/text-level-semantics/the-a-element/a-download-click-expected.txt
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/third_party/WebKit/LayoutTests/external/wpt/html/semantics/text-level-semantics/the-a-element/a-download-click.html
[add] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/third_party/WebKit/LayoutTests/external/wpt/html/semantics/text-level-semantics/the-a-element/resources/a-download-click.html
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/third_party/WebKit/LayoutTests/fast/events/drag-file-crash.html
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/third_party/WebKit/LayoutTests/fast/events/resources/drag-file-crash-pass.html
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/third_party/WebKit/LayoutTests/http/tests/security/upgrade-insecure-requests/https-header-top-level.html
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/third_party/WebKit/Source/core/html/HTMLAnchorElement.cpp
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/third_party/WebKit/Source/core/loader/FrameLoader.cpp
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/third_party/WebKit/Source/platform/exported/WebURLRequest.cpp
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/third_party/WebKit/Source/platform/loader/fetch/ResourceRequest.cpp
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/third_party/WebKit/Source/platform/loader/fetch/ResourceRequest.h
[modify] https://crrev.com/f2d2fe87028de36a489f7db3f5fb28da2e9d9b2b/third_party/WebKit/public/platform/WebURLRequest.h

Comment 2 by jsb...@chromium.org, Jan 20 2018

Status: Available (was: Untriaged)
Owner: cmumford@chromium.org
Status: Started (was: Available)
Cc: cmumford@chromium.org
 Issue 817134  has been merged into this issue.
Project Member

Comment 5 by bugdroid1@chromium.org, Mar 15 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ef8a99cba301276aa64d628cd683be9c142e6335

commit ef8a99cba301276aa64d628cd683be9c142e6335
Author: Chris Mumford <cmumford@chromium.org>
Date: Thu Mar 15 16:09:10 2018

FileSystem: Add move constructor/operator for FileSystemURL.

This is not strictly required for  issue 797292  (filesystem:
support with network service), but it should make that implementation
slightly more efficient and better to land in its own CL.

Bug:  797292 
Change-Id: Ia6a20ded0f0c414d632530805bc3ae3eb3053328
Reviewed-on: https://chromium-review.googlesource.com/960922
Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org>
Commit-Queue: Chris Mumford <cmumford@chromium.org>
Cr-Commit-Position: refs/heads/master@{#543380}
[modify] https://crrev.com/ef8a99cba301276aa64d628cd683be9c142e6335/storage/browser/fileapi/file_system_url.cc
[modify] https://crrev.com/ef8a99cba301276aa64d628cd683be9c142e6335/storage/browser/fileapi/file_system_url.h
[modify] https://crrev.com/ef8a99cba301276aa64d628cd683be9c142e6335/storage/browser/fileapi/file_system_url_unittest.cc

Project Member

Comment 6 by bugdroid1@chromium.org, Apr 10 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/0f7ed208c67aebb227a68f72cf0e7efabcfd3d56

commit 0f7ed208c67aebb227a68f72cf0e7efabcfd3d56
Author: Chris Mumford <cmumford@chromium.org>
Date: Tue Apr 10 17:47:02 2018

FileSystemContext::AttemptAutoMountForURLRequest passing struct.

Previously FileSystemContext::AttemptAutoMountForURLRequest passed
a net::URLRequest pointer to the automount handlers. In order to
support the network service this change switches to passing a
FileSystemRequestInfo structure containing the original request
(for legacy network operations), and a |content_id| for use by
the network service.

Bug:  797292 
Change-Id: I6b09875e9f6ff46e7a10e575ffd0bf2c60f3880d
Reviewed-on: https://chromium-review.googlesource.com/955663
Commit-Queue: Chris Mumford <cmumford@chromium.org>
Reviewed-by: Taiju Tsuiki <tzik@chromium.org>
Cr-Commit-Position: refs/heads/master@{#549581}
[modify] https://crrev.com/0f7ed208c67aebb227a68f72cf0e7efabcfd3d56/chrome/browser/media_galleries/fileapi/media_file_system_backend.cc
[modify] https://crrev.com/0f7ed208c67aebb227a68f72cf0e7efabcfd3d56/chrome/browser/media_galleries/fileapi/media_file_system_backend.h
[modify] https://crrev.com/0f7ed208c67aebb227a68f72cf0e7efabcfd3d56/storage/browser/fileapi/file_system_context.cc
[modify] https://crrev.com/0f7ed208c67aebb227a68f72cf0e7efabcfd3d56/storage/browser/fileapi/file_system_context.h
[modify] https://crrev.com/0f7ed208c67aebb227a68f72cf0e7efabcfd3d56/storage/browser/fileapi/file_system_dir_url_request_job.cc
[modify] https://crrev.com/0f7ed208c67aebb227a68f72cf0e7efabcfd3d56/storage/browser/fileapi/file_system_dir_url_request_job_unittest.cc
[modify] https://crrev.com/0f7ed208c67aebb227a68f72cf0e7efabcfd3d56/storage/browser/fileapi/file_system_url_request_job.cc
[modify] https://crrev.com/0f7ed208c67aebb227a68f72cf0e7efabcfd3d56/storage/browser/fileapi/file_system_url_request_job_unittest.cc

Project Member

Comment 7 by bugdroid1@chromium.org, May 19

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/942075ad5f7a44858f267523b134c3adc1c50af7

commit 942075ad5f7a44858f267523b134c3adc1c50af7
Author: Chris Mumford <cmumford@chromium.org>
Date: Sat May 19 00:22:04 2018

Implemented filesystem:// with the network service.

Bug:  797292 
Cq-Include-Trybots: master.tryserver.chromium.linux:linux_mojo
Change-Id: If5e18eb719ea282861ac82d89b0ec7e999dcfde8
Reviewed-on: https://chromium-review.googlesource.com/982752
Commit-Queue: Chris Mumford <cmumford@chromium.org>
Reviewed-by: John Abd-El-Malek <jam@chromium.org>
Reviewed-by: Chris Mumford <cmumford@chromium.org>
Reviewed-by: Daniel Murphy <dmurph@chromium.org>
Cr-Commit-Position: refs/heads/master@{#560115}
[modify] https://crrev.com/942075ad5f7a44858f267523b134c3adc1c50af7/content/browser/BUILD.gn
[add] https://crrev.com/942075ad5f7a44858f267523b134c3adc1c50af7/content/browser/fileapi/file_system_url_loader_factory.cc
[add] https://crrev.com/942075ad5f7a44858f267523b134c3adc1c50af7/content/browser/fileapi/file_system_url_loader_factory.h
[add] https://crrev.com/942075ad5f7a44858f267523b134c3adc1c50af7/content/browser/fileapi/file_system_url_loader_factory_browsertest.cc
[modify] https://crrev.com/942075ad5f7a44858f267523b134c3adc1c50af7/content/browser/frame_host/render_frame_host_impl.cc
[modify] https://crrev.com/942075ad5f7a44858f267523b134c3adc1c50af7/content/browser/loader/navigation_url_loader_impl.cc
[modify] https://crrev.com/942075ad5f7a44858f267523b134c3adc1c50af7/content/browser/network_service_browsertest.cc
[modify] https://crrev.com/942075ad5f7a44858f267523b134c3adc1c50af7/content/test/BUILD.gn
[modify] https://crrev.com/942075ad5f7a44858f267523b134c3adc1c50af7/testing/buildbot/filters/mojo.fyi.network_browser_tests.filter
[modify] https://crrev.com/942075ad5f7a44858f267523b134c3adc1c50af7/testing/buildbot/filters/mojo.fyi.network_content_browsertests.filter
[modify] https://crrev.com/942075ad5f7a44858f267523b134c3adc1c50af7/third_party/WebKit/LayoutTests/FlagExpectations/enable-features=NetworkService

Status: Fixed (was: Started)
Project Member

Comment 9 by bugdroid1@chromium.org, Aug 10

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4c999b6344a3a2d1bd8dbdd09f83d4499453d336

commit 4c999b6344a3a2d1bd8dbdd09f83d4499453d336
Author: John Abd-El-Malek <jam@chromium.org>
Date: Fri Aug 10 20:58:37 2018

Enable some more passing browser tests with network service.

Bug:  797292 ,  859594 

Cq-Include-Trybots: luci.chromium.try:linux_mojo
Change-Id: Id4e90f0ebdf5ac172b12c92d80b54348125bc883
Reviewed-on: https://chromium-review.googlesource.com/1171556
Reviewed-by: Chris Mumford <cmumford@chromium.org>
Commit-Queue: John Abd-El-Malek <jam@chromium.org>
Cr-Commit-Position: refs/heads/master@{#582328}
[modify] https://crrev.com/4c999b6344a3a2d1bd8dbdd09f83d4499453d336/testing/buildbot/filters/mojo.fyi.network_browser_tests.filter

Sign in to add a comment