5513e66982
* chore: bump chromium in DEPS to 94.0.4604.0 * build: 3-way merge of chromium patches * chore: bump chromium in DEPS to 94.0.4605.0 * build: 3-way merge of chromium patches * 3076040: Reland Remove delete_children RemoveAllChildViews arg Ref: https://chromium-review.googlesource.com/c/chromium/src/+/3076040 * 3069287: Remove the remaining uses and delete the deprecated API Ref: https://chromium-review.googlesource.com/c/chromium/src/+/3069287 * 2297212: Replace RemoveWithoutPathExpansion(.*, nullptr) with Value::RemoveKey() Refs: https://chromium-review.googlesource.com/c/chromium/src/+/2297212 Also: https://chromium-review.googlesource.com/c/chromium/src/+/3060296 * 3082756: Change transport_security_persister_path param to be a path to a file. Refs: https://chromium-review.googlesource.com/c/chromium/src/+/3082756 > this CL intentionally changes the name of the parameter > in the network context parameters and the order of the constructor > parameters to ensure all callers update their code to pass a full > file path rather than a path to a directory. The 'path' in this diff is already an absolute path, coming from `CHECK(base::PathService::Get(chrome::DIR_USER_DATA, &path_));` at08ff1c2cbf/shell/browser/electron_browser_context.cc (L126)
* iwyu: network::mojom::HttpRawHeaderPair * fixup! 3076040: Reland Remove delete_children RemoveAllChildViews arg Missed one. * 2999884: CodeHealth: Remove DictionaryValue::GetStringWithoutPathExpansion Refs: https://chromium-review.googlesource.com/c/chromium/src/+/2999884 (example of replacing GetStringWithoutPathExpansion() w/FindStringKey()) Also: https://chromium-review.googlesource.com/c/chromium/src/+/3060296 (removal of DictionaryValue::GetStringWithoutPathExpansion) * 3059260: Remove kSameSiteByDefaultCookies and kCookiesWithoutSameSiteMustBeSecure Refs: https://chromium-review.googlesource.com/c/chromium/src/+/3059260 We had both of these in a 'disable_features' list. Since these feature have been removed upstream, remove them from our disable list, too. IMPORTANT: this commit should not be backported to older branches that still have these features, because doing so would un-disable them. * 2920890: Load reroute_info from download in-progress and history db back into DownloadItem. Refs: https://chromium-review.googlesource.com/c/chromium/src/+/2920890 * 3039323: [Clipboard API] Clipboard Custom Formats implementation Part 5. Refs: https://chromium-review.googlesource.com/c/chromium/src/+/3039323 * chore: bump chromium in DEPS to 94.0.4606.0 * 3084502: Add a new PrintRasterizePdfDpi policy. Refs: https://chromium-review.googlesource.com/c/chromium/src/+/3084502 * chore: update patches * chore: bump chromium in DEPS to 94.0.4606.3 * chore: bump chromium in DEPS to 95.0.4608.0 * chore: bump chromium in DEPS to 95.0.4609.0 * [DevTools] Remove report_raw_headers from network::ResourceRequest https://chromium-review.googlesource.com/c/chromium/src/+/2856099 * Remove content::WebContentsObserver::OnInterfaceRequestFromFrame https://chromium-review.googlesource.com/c/chromium/src/+/3092665 * Disable kDesktopCaptureMacV2 https://chromium-review.googlesource.com/c/chromium/src/+/3069272 * Add a new PrintRasterizePdfDpi policy. https://chromium-review.googlesource.com/c/chromium/src/+/3084502 * chore: update patches * chore: bump chromium in DEPS to 95.0.4609.3 * disable `use_lld` for macos * chore: update patches * Linux: use chrome_crashpad_handler instead of crashpad_handler https://chromium-review.googlesource.com/c/chromium/src/+/3054290 * chore: fix lint * Revert "[DevTools] Remove report_raw_headers from network::ResourceRequest" This reverts commit 28f4da1582d046e96cb58f3cbb590503e89dfd0d. * [DevTools] Remove report_raw_headers from network::ResourceRequest (Attempt #2) https://chromium-review.googlesource.com/c/chromium/src/+/2856099 * DCHECK that predictor always has a non-empty NetworkIsolationKey. https://chromium-review.googlesource.com/c/chromium/src/+/3067698 * Remove --no-untrusted-code-mitigations from //content and //gin https://chromium-review.googlesource.com/c/chromium/src/+/3096585 * fixup! Remove kSameSiteByDefaultCookies and kCookiesWithoutSameSiteMustBeSecure https://chromium-review.googlesource.com/c/chromium/src/+/3059260 * fixup! Remove kSameSiteByDefaultCookies and kCookiesWithoutSameSiteMustBeSecure * Convert PrintManager to RenderFrameHostReceiverSet. https://chromium-review.googlesource.com/c/chromium/src/+/3072019 * chore: bump chromium in DEPS to 95.0.4612.5 * chore: disable v8 oilpan * [Compiler] Remove untrusted code mitigations. https://chromium-review.googlesource.com/c/v8/v8/+/3045704 * Remove most FTP logic from services/network. https://chromium-review.googlesource.com/c/chromium/src/+/3076119 * Rename scale_factor.h -> resource_scale_factor.h https://chromium-review.googlesource.com/c/chromium/src/+/3057113 * [GURL -> SiteForCookies] extensions/ https://chromium-review.googlesource.com/c/chromium/src/+/3100825 * breadcrumbs: add desktop entry point https://chromium-review.googlesource.com/c/chromium/src/+/3021746 * Move args_ to private in ExtensionFunction https://chromium-review.googlesource.com/c/chromium/src/+/3076261 * chore: iwyu * fixup! Remove kSameSiteByDefaultCookies and kCookiesWithoutSameSiteMustBeSecure * Disable kDesktopCaptureMacV2 https://chromium-review.googlesource.com/c/chromium/src/+/3069272 * fixup! [Compiler] Remove untrusted code mitigations. * fixup! Disable kDesktopCaptureMacV2 * Revert "chore: disable v8 oilpan" This reverts commit 5d255cf1d8e8efbb906047937a713279e5f800d0. * Reland "chore: disable v8 oilpan" This reverts commit 1c252765b07a205560e7b5eed06de2605336e2d8. The previous revert was to test on which platforms did the heapsnapshot test actually fail. * [Clipboard API] Clipboard Custom Formats implementation Part 5. https://chromium-review.googlesource.com/c/chromium/src/+/3039323 * Convert ExtensionFrameHost to RenderFrameHostReceiverSet. https://chromium-review.googlesource.com/c/chromium/src/+/3063358 * Convert PDFWebContentsHelper to RenderFrameHostReceiverSet. https://chromium-review.googlesource.com/c/chromium/src/+/3049751 * [Underscore Migration] Migrate ui/legacy https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3093160 * chore: remove unknown permission error * chore: fix lint * chore: ignore -Wunreachable-code-return for node deps/ * fixup! chore: ignore -Wunreachable-code-return for node deps/ * fix: windows build * fix: build dependency Dependency was missed incbeae20438
* 3108669: arm,dsp: Fix 8bpp Dct64_NEON(). https://chromium-review.googlesource.com/c/codecs/libgav1/+/3108669 * chore: revert libgav1 roll * Revert "3108669: arm,dsp: Fix 8bpp Dct64_NEON()." This reverts commit 7ed31323127aac8ba2eaff9cae6c9be9a4954f33. * Revert "chore: revert libgav1 roll" This reverts commit 084a490d298811267316c786762fe7aa91b6318d. * chore: revert clang roll * chore: Fix -Wunreachable-code-aggressive warnings in arm and arm64 code Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com> Co-authored-by: Charles Kerr <charles@charleskerr.com> Co-authored-by: deepak1556 <hop2deep@gmail.com> Co-authored-by: mlaurencin <mlaurencin@electronjs.org> Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
93 lines
3.5 KiB
C++
93 lines
3.5 KiB
C++
// Copyright (c) 2019 GitHub, Inc.
|
|
// Use of this source code is governed by the MIT license that can be
|
|
// found in the LICENSE file.
|
|
|
|
#include "shell/browser/net/network_context_service.h"
|
|
|
|
#include <utility>
|
|
|
|
#include "chrome/common/chrome_constants.h"
|
|
#include "content/public/browser/network_service_instance.h"
|
|
#include "content/public/browser/shared_cors_origin_access_list.h"
|
|
#include "electron/fuses.h"
|
|
#include "net/net_buildflags.h"
|
|
#include "services/network/network_service.h"
|
|
#include "services/network/public/cpp/cors/origin_access_list.h"
|
|
#include "shell/browser/browser_process_impl.h"
|
|
#include "shell/browser/electron_browser_client.h"
|
|
#include "shell/browser/net/system_network_context_manager.h"
|
|
|
|
namespace electron {
|
|
|
|
NetworkContextService::NetworkContextService(content::BrowserContext* context)
|
|
: browser_context_(static_cast<ElectronBrowserContext*>(context)),
|
|
proxy_config_monitor_(browser_context_->prefs()) {}
|
|
|
|
NetworkContextService::~NetworkContextService() = default;
|
|
|
|
void NetworkContextService::ConfigureNetworkContextParams(
|
|
network::mojom::NetworkContextParams* network_context_params,
|
|
cert_verifier::mojom::CertVerifierCreationParams*
|
|
cert_verifier_creation_params) {
|
|
bool in_memory = browser_context_->IsOffTheRecord();
|
|
const base::FilePath& path = browser_context_->GetPath();
|
|
|
|
g_browser_process->system_network_context_manager()
|
|
->ConfigureDefaultNetworkContextParams(network_context_params);
|
|
|
|
mojo::Remote<network::mojom::SSLConfigClient> ssl_config_client;
|
|
network_context_params->ssl_config_client_receiver =
|
|
ssl_config_client.BindNewPipeAndPassReceiver();
|
|
browser_context_->SetSSLConfigClient(std::move(ssl_config_client));
|
|
|
|
network_context_params->initial_ssl_config = browser_context_->GetSSLConfig();
|
|
|
|
network_context_params->user_agent = browser_context_->GetUserAgent();
|
|
|
|
network_context_params->cors_origin_access_list =
|
|
browser_context_->GetSharedCorsOriginAccessList()
|
|
->GetOriginAccessList()
|
|
.CreateCorsOriginAccessPatternsList();
|
|
|
|
network_context_params->accept_language =
|
|
net::HttpUtil::GenerateAcceptLanguageHeader(
|
|
ElectronBrowserClient::Get()->GetApplicationLocale());
|
|
|
|
// Enable the HTTP cache.
|
|
network_context_params->http_cache_enabled =
|
|
browser_context_->CanUseHttpCache();
|
|
|
|
network_context_params->cookie_manager_params =
|
|
network::mojom::CookieManagerParams::New();
|
|
|
|
// Configure on-disk storage for persistent sessions.
|
|
if (!in_memory) {
|
|
// Configure the HTTP cache path and size.
|
|
network_context_params->http_cache_path =
|
|
path.Append(chrome::kCacheDirname);
|
|
network_context_params->http_cache_max_size =
|
|
browser_context_->GetMaxCacheSize();
|
|
|
|
// Currently this just contains HttpServerProperties
|
|
network_context_params->http_server_properties_path =
|
|
path.Append(chrome::kNetworkPersistentStateFilename);
|
|
|
|
// Configure persistent cookie path.
|
|
network_context_params->cookie_path = path.Append(chrome::kCookieFilename);
|
|
|
|
network_context_params->restore_old_session_cookies = false;
|
|
network_context_params->persist_session_cookies = false;
|
|
|
|
network_context_params->enable_encrypted_cookies =
|
|
electron::fuses::IsCookieEncryptionEnabled();
|
|
|
|
network_context_params->transport_security_persister_file_path = path;
|
|
}
|
|
|
|
proxy_config_monitor_.AddToNetworkContextParams(network_context_params);
|
|
|
|
BrowserProcessImpl::ApplyProxyModeFromCommandLine(
|
|
browser_context_->in_memory_pref_store());
|
|
}
|
|
|
|
} // namespace electron
|