1// Copyright (c) 2011 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5// This is the list of load flags and their values. For the enum values,
6// include the file "net/base/load_flags.h".
7//
8// Here we define the values using a macro LOAD_FLAG, so it can be
9// expanded differently in some places (for example, to automatically
10// map a load flag value to its symbolic name).
11
12LOAD_FLAG(NORMAL, 0)
13
14// This is "normal reload", meaning an if-none-match/if-modified-since query
15LOAD_FLAG(VALIDATE_CACHE, 1 << 0)
16
17// This is "shift-reload", meaning a "pragma: no-cache" end-to-end fetch
18LOAD_FLAG(BYPASS_CACHE, 1 << 1)
19
20// This is a back/forward style navigation where the cached content should
21// be preferred over any protocol specific cache validation.
22LOAD_FLAG(PREFERRING_CACHE, 1 << 2)
23
24// This is a navigation that will fail if it cannot serve the requested
25// resource from the cache (or some equivalent local store).
26LOAD_FLAG(ONLY_FROM_CACHE, 1 << 3)
27
28// Indicate that if the request fails at the network level in a way that
29// indicates the source is unreachable, the request should fail over
30// to as if LOAD_PREFERRING_CACHE had been set.
31LOAD_FLAG(FROM_CACHE_IF_OFFLINE, 1 << 4)
32
33// This is a navigation that will not use the cache at all.  It does not
34// impact the HTTP request headers.
35LOAD_FLAG(DISABLE_CACHE, 1 << 5)
36
37// This is a navigation that will not be intercepted by any registered
38// URLRequest::Interceptors.
39LOAD_FLAG(DISABLE_INTERCEPT, 1 << 6)
40
41// If present, upload progress messages should be provided to initiator.
42LOAD_FLAG(ENABLE_UPLOAD_PROGRESS, 1 << 7)
43
44// If present, ignores certificate mismatches with the domain name.
45// (The default behavior is to trigger an OnSSLCertificateError callback.)
46LOAD_FLAG(IGNORE_CERT_COMMON_NAME_INVALID, 1 << 8)
47
48// If present, ignores certificate expiration dates
49// (The default behavior is to trigger an OnSSLCertificateError callback).
50LOAD_FLAG(IGNORE_CERT_DATE_INVALID, 1 << 9)
51
52// If present, trusts all certificate authorities
53// (The default behavior is to trigger an OnSSLCertificateError callback).
54LOAD_FLAG(IGNORE_CERT_AUTHORITY_INVALID, 1 << 10)
55
56// If present, causes certificate revocation checks to be skipped on secure
57// connections.
58LOAD_FLAG(DISABLE_CERT_REVOCATION_CHECKING, 1 << 11)
59
60// If present, ignores wrong key usage of the certificate
61// (The default behavior is to trigger an OnSSLCertificateError callback).
62LOAD_FLAG(IGNORE_CERT_WRONG_USAGE, 1 << 12)
63
64// This load will not make any changes to cookies, including storing new
65// cookies or updating existing ones.
66LOAD_FLAG(DO_NOT_SAVE_COOKIES, 1 << 13)
67
68// Do not resolve proxies. This override is used when downloading PAC files
69// to avoid having a circular dependency.
70LOAD_FLAG(BYPASS_PROXY, 1 << 14)
71
72// Indicate this request is for a download, as opposed to viewing.
73LOAD_FLAG(IS_DOWNLOAD, 1 << 15)
74
75// Requires EV certificate verification.
76LOAD_FLAG(VERIFY_EV_CERT, 1 << 16)
77
78// This load will not send any cookies.
79LOAD_FLAG(DO_NOT_SEND_COOKIES, 1 << 17)
80
81// This load will not send authentication data (user name/password)
82// to the server (as opposed to the proxy).
83LOAD_FLAG(DO_NOT_SEND_AUTH_DATA, 1 << 18)
84
85// This should only be used for testing (set by HttpNetworkTransaction).
86LOAD_FLAG(IGNORE_ALL_CERT_ERRORS, 1 << 19)
87
88// Indicate that this is a top level frame, so that we don't assume it is a
89// subresource and speculatively pre-connect or pre-resolve when a referring
90// page is loaded.
91LOAD_FLAG(MAIN_FRAME, 1 << 20)
92
93// Indicate that this is a sub frame, and hence it might have subresources that
94// should be speculatively resolved, or even speculatively preconnected.
95LOAD_FLAG(SUB_FRAME, 1 << 21)
96
97// If present, intercept actual request/response headers from network stack
98// and report them to renderer. This includes cookies, so the flag is only
99// respected if renderer has CanReadRawCookies capability in the security
100// policy.
101LOAD_FLAG(REPORT_RAW_HEADERS, 1 << 22)
102
103// Indicates that this load was motivated by the rel=prefetch feature,
104// and is (in theory) not intended for the current frame.
105LOAD_FLAG(PREFETCH, 1 << 23)
106
107// Indicates that this is a load that ignores limits and should complete
108// immediately.
109LOAD_FLAG(IGNORE_LIMITS, 1 << 24)
110
111// Suppress login prompts for this request. Cached credentials or
112// default credentials may still be used for authentication.
113LOAD_FLAG(DO_NOT_PROMPT_FOR_LOGIN, 1 << 25)
114
115// Indicates that the operation is somewhat likely to be due to an
116// explicit user action. This can be used as a hint to treat the
117// request with higher priority.
118LOAD_FLAG(MAYBE_USER_GESTURE, 1 << 26)
119
120// Indicates that the username:password portion of the URL should not
121// be honored, but that other forms of authority may be used.
122LOAD_FLAG(DO_NOT_USE_EMBEDDED_IDENTITY, 1 << 27)
123
124// Send request directly to the origin if the effective proxy is the data
125// reduction proxy.
126// TODO(rcs): Remove this flag as soon as http://crbug.com/339237 is resolved.
127LOAD_FLAG(BYPASS_DATA_REDUCTION_PROXY, 1 << 28)
128