Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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_CONTENT_CLIENT_H_ | 5 #ifndef CONTENT_PUBLIC_COMMON_CONTENT_CLIENT_H_ |
| 6 #define CONTENT_PUBLIC_COMMON_CONTENT_CLIENT_H_ | 6 #define CONTENT_PUBLIC_COMMON_CONTENT_CLIENT_H_ |
| 7 | 7 |
| 8 #include <set> | 8 #include <set> |
| 9 #include <string> | 9 #include <string> |
| 10 #include <vector> | 10 #include <vector> |
| (...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 100 // startup sequence. | 100 // startup sequence. |
| 101 struct Schemes { | 101 struct Schemes { |
| 102 Schemes(); | 102 Schemes(); |
| 103 ~Schemes(); | 103 ~Schemes(); |
| 104 std::vector<std::string> standard_schemes; | 104 std::vector<std::string> standard_schemes; |
| 105 std::vector<std::string> referrer_schemes; | 105 std::vector<std::string> referrer_schemes; |
| 106 std::vector<std::string> savable_schemes; | 106 std::vector<std::string> savable_schemes; |
| 107 // Additional schemes that should be allowed to register service workers. | 107 // Additional schemes that should be allowed to register service workers. |
| 108 // Only secure and trustworthy schemes should be added. | 108 // Only secure and trustworthy schemes should be added. |
| 109 std::vector<std::string> service_worker_schemes; | 109 std::vector<std::string> service_worker_schemes; |
| 110 // For the following three, see the documentation in WebSecurityPolicy. | 110 // Registers a URL scheme to be treated as a local scheme (i.e., with the |
| 111 // same security rules as those applied to "file" URLs). This means that | |
| 112 // normal pages cannot link to or access URLs of this scheme. | |
| 111 std::vector<std::string> local_schemes; | 113 std::vector<std::string> local_schemes; |
| 114 // Registers a URL scheme to be treated as a noAccess scheme. This means | |
|
dcheng
2017/03/23 21:07:15
Nit: indent
jam
2017/03/23 21:43:21
Done.
| |
| 115 // that pages loaded with this URL scheme cannot access pages loaded with | |
| 116 // any other URL scheme. | |
|
dcheng
2017/03/23 21:07:15
Nit: probably more accurate to say that pages with
jam
2017/03/23 21:43:21
Done.
| |
| 112 std::vector<std::string> no_access_schemes; | 117 std::vector<std::string> no_access_schemes; |
| 118 // Registers a non-HTTP URL scheme which can be sent CORS requests. | |
| 113 std::vector<std::string> cors_enabled_schemes; | 119 std::vector<std::string> cors_enabled_schemes; |
| 120 // Registers a URL scheme whose resources can be loaded regardless of a | |
| 121 // page's Content Security Policy. | |
| 114 std::vector<std::string> csp_bypassing_schemes; | 122 std::vector<std::string> csp_bypassing_schemes; |
| 115 // See https://www.w3.org/TR/powerful-features/#is-origin-trustworthy. | 123 // See https://www.w3.org/TR/powerful-features/#is-origin-trustworthy. |
| 116 std::vector<std::string> secure_schemes; | 124 std::vector<std::string> secure_schemes; |
| 117 std::vector<GURL> secure_origins; | 125 std::vector<GURL> secure_origins; |
| 126 // Registers a URL scheme as strictly empty documents, allowing them to | |
| 127 // commit synchronously. | |
| 128 std::vector<std::string> empty_document_schemes; | |
| 118 }; | 129 }; |
| 119 | 130 |
| 120 virtual void AddAdditionalSchemes(Schemes* schemes) {} | 131 virtual void AddAdditionalSchemes(Schemes* schemes) {} |
| 121 | 132 |
| 122 // Returns whether the given message should be sent in a swapped out renderer. | 133 // Returns whether the given message should be sent in a swapped out renderer. |
| 123 virtual bool CanSendWhileSwappedOut(const IPC::Message* message); | 134 virtual bool CanSendWhileSwappedOut(const IPC::Message* message); |
| 124 | 135 |
| 125 // Returns a string describing the embedder product name and version, | 136 // Returns a string describing the embedder product name and version, |
| 126 // of the form "productname/version", with no other slashes. | 137 // of the form "productname/version", with no other slashes. |
| 127 // Used as part of the user agent string. | 138 // Used as part of the user agent string. |
| (...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 197 ContentGpuClient* gpu_; | 208 ContentGpuClient* gpu_; |
| 198 // The embedder API for participating in renderer logic. | 209 // The embedder API for participating in renderer logic. |
| 199 ContentRendererClient* renderer_; | 210 ContentRendererClient* renderer_; |
| 200 // The embedder API for participating in utility logic. | 211 // The embedder API for participating in utility logic. |
| 201 ContentUtilityClient* utility_; | 212 ContentUtilityClient* utility_; |
| 202 }; | 213 }; |
| 203 | 214 |
| 204 } // namespace content | 215 } // namespace content |
| 205 | 216 |
| 206 #endif // CONTENT_PUBLIC_COMMON_CONTENT_CLIENT_H_ | 217 #endif // CONTENT_PUBLIC_COMMON_CONTENT_CLIENT_H_ |
| OLD | NEW |