Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(362)

Side by Side Diff: content/public/common/url_utils.h

Issue 1497743005: Allow huge data: URIs only via WebView.loadDataWithBaseUrl (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fixed the test Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « content/public/common/content_constants.cc ('k') | content/public/common/url_utils.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CONTENT_PUBLIC_COMMON_URL_UTILS_H_ 5 #ifndef CONTENT_PUBLIC_COMMON_URL_UTILS_H_
6 #define CONTENT_PUBLIC_COMMON_URL_UTILS_H_ 6 #define CONTENT_PUBLIC_COMMON_URL_UTILS_H_
7 7
8 #include <stddef.h> // For size_t
9
10 #include "build/build_config.h"
11 #include "content/common/content_export.h" 8 #include "content/common/content_export.h"
12 9
13 class GURL; 10 class GURL;
14 11
15 namespace content { 12 namespace content {
16 13
17 // Null terminated list of schemes that are savable. This function can be 14 // Null terminated list of schemes that are savable. This function can be
18 // invoked on any thread. 15 // invoked on any thread.
19 CONTENT_EXPORT const char* const* GetSavableSchemes(); 16 CONTENT_EXPORT const char* const* GetSavableSchemes();
20 17
21 // Returns true if the url has a scheme for WebUI. See also 18 // Returns true if the url has a scheme for WebUI. See also
22 // WebUIControllerFactory::UseWebUIForURL in the browser process. 19 // WebUIControllerFactory::UseWebUIForURL in the browser process.
23 CONTENT_EXPORT bool HasWebUIScheme(const GURL& url); 20 CONTENT_EXPORT bool HasWebUIScheme(const GURL& url);
24 21
25 // Check whether we can do the saving page operation for the specified URL. 22 // Check whether we can do the saving page operation for the specified URL.
26 CONTENT_EXPORT bool IsSavableURL(const GURL& url); 23 CONTENT_EXPORT bool IsSavableURL(const GURL& url);
27 24
28 #if defined(OS_ANDROID)
29 // Set a new max size for URL's that we are willing to accept in the browser
30 // process.
31 // Should not be used except by Android WebView for backwards compatibility.
32 // Should be called early in start up before forking child processes.
33 //
34 // This is for supporting legacy android apps, android webview needs to
35 // support loading long data urls. In chrome, the url length is limited to 2M to
36 // prevent renderer process DOS-ing the browser process. So only for android
37 // webview, increase the limit to 20M, which is a large enough value to satisfy
38 // legacy app compatibility requirements.
39 CONTENT_EXPORT void SetMaxURLChars(size_t max_chars);
40 #endif
41
42 // The maximum number of characters in the URL that we're willing to accept
43 // in the browser process. It is set low enough to avoid damage to the browser
44 // but high enough that a web site can abuse location.hash for a little storage.
45 // We have different values for "max accepted" and "max displayed" because
46 // a data: URI may be legitimately massive, but the full URI would kill all
47 // known operating systems if you dropped it into a UI control.
48 CONTENT_EXPORT size_t GetMaxURLChars();
49
50 } // namespace content 25 } // namespace content
51 26
52 #endif // CONTENT_PUBLIC_COMMON_URL_UTILS_H_ 27 #endif // CONTENT_PUBLIC_COMMON_URL_UTILS_H_
OLDNEW
« no previous file with comments | « content/public/common/content_constants.cc ('k') | content/public/common/url_utils.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698