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

Side by Side Diff: components/data_reduction_proxy/core/common/data_reduction_proxy_headers.cc

Issue 1546143002: Switch to standard integer types in components/, part 1 of 4. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 12 months 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
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 #include "components/data_reduction_proxy/core/common/data_reduction_proxy_heade rs.h" 5 #include "components/data_reduction_proxy/core/common/data_reduction_proxy_heade rs.h"
6 6
7 #include <stddef.h>
8 #include <stdint.h>
9
7 #include <string> 10 #include <string>
8 #include <vector> 11 #include <vector>
9 12
10 #include "base/rand_util.h" 13 #include "base/rand_util.h"
11 #include "base/strings/string_number_conversions.h" 14 #include "base/strings/string_number_conversions.h"
12 #include "base/strings/string_piece.h" 15 #include "base/strings/string_piece.h"
13 #include "base/strings/string_util.h" 16 #include "base/strings/string_util.h"
14 #include "base/time/time.h" 17 #include "base/time/time.h"
15 #include "components/data_reduction_proxy/core/common/data_reduction_proxy_event _creator.h" 18 #include "components/data_reduction_proxy/core/common/data_reduction_proxy_event _creator.h"
16 #include "net/http/http_response_headers.h" 19 #include "net/http/http_response_headers.h"
(...skipping 20 matching lines...) Expand all
37 const char kChromeProxyActionFingerprintChromeProxy[] = "fcp"; 40 const char kChromeProxyActionFingerprintChromeProxy[] = "fcp";
38 const char kChromeProxyActionFingerprintVia[] = "fvia"; 41 const char kChromeProxyActionFingerprintVia[] = "fvia";
39 const char kChromeProxyActionFingerprintOtherHeaders[] = "foh"; 42 const char kChromeProxyActionFingerprintOtherHeaders[] = "foh";
40 const char kChromeProxyActionFingerprintContentLength[] = "fcl"; 43 const char kChromeProxyActionFingerprintContentLength[] = "fcl";
41 44
42 const int kShortBypassMaxSeconds = 59; 45 const int kShortBypassMaxSeconds = 59;
43 const int kMediumBypassMaxSeconds = 300; 46 const int kMediumBypassMaxSeconds = 300;
44 47
45 // Returns a random bypass duration between 1 and 5 minutes. 48 // Returns a random bypass duration between 1 and 5 minutes.
46 base::TimeDelta GetDefaultBypassDuration() { 49 base::TimeDelta GetDefaultBypassDuration() {
47 const int64 delta_ms = 50 const int64_t delta_ms =
48 base::RandInt(base::TimeDelta::FromMinutes(1).InMilliseconds(), 51 base::RandInt(base::TimeDelta::FromMinutes(1).InMilliseconds(),
49 base::TimeDelta::FromMinutes(5).InMilliseconds()); 52 base::TimeDelta::FromMinutes(5).InMilliseconds());
50 return TimeDelta::FromMilliseconds(delta_ms); 53 return TimeDelta::FromMilliseconds(delta_ms);
51 } 54 }
52 55
53 } // namespace 56 } // namespace
54 57
55 namespace data_reduction_proxy { 58 namespace data_reduction_proxy {
56 59
57 const char* chrome_proxy_header() { 60 const char* chrome_proxy_header() {
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
103 // A valid action does not include a trailing '='. 106 // A valid action does not include a trailing '='.
104 DCHECK(action_prefix[action_prefix.size() - 1] != kActionValueDelimiter); 107 DCHECK(action_prefix[action_prefix.size() - 1] != kActionValueDelimiter);
105 void* iter = NULL; 108 void* iter = NULL;
106 std::string value; 109 std::string value;
107 std::string prefix = action_prefix + kActionValueDelimiter; 110 std::string prefix = action_prefix + kActionValueDelimiter;
108 111
109 while (headers->EnumerateHeader(&iter, kChromeProxyHeader, &value)) { 112 while (headers->EnumerateHeader(&iter, kChromeProxyHeader, &value)) {
110 if (value.size() > prefix.size()) { 113 if (value.size() > prefix.size()) {
111 if (base::StartsWith(value, prefix, 114 if (base::StartsWith(value, prefix,
112 base::CompareCase::INSENSITIVE_ASCII)) { 115 base::CompareCase::INSENSITIVE_ASCII)) {
113 int64 seconds; 116 int64_t seconds;
114 if (!base::StringToInt64( 117 if (!base::StringToInt64(
115 StringPiece(value.begin() + prefix.size(), value.end()), 118 StringPiece(value.begin() + prefix.size(), value.end()),
116 &seconds) || seconds < 0) { 119 &seconds) || seconds < 0) {
117 continue; // In case there is a well formed instruction. 120 continue; // In case there is a well formed instruction.
118 } 121 }
119 if (seconds != 0) { 122 if (seconds != 0) {
120 *bypass_duration = TimeDelta::FromSeconds(seconds); 123 *bypass_duration = TimeDelta::FromSeconds(seconds);
121 } else { 124 } else {
122 // Server deferred to us to choose a duration. Default to a random 125 // Server deferred to us to choose a duration. Default to a random
123 // duration between one and five minutes. 126 // duration between one and five minutes.
(...skipping 192 matching lines...) Expand 10 before | Expand all | Expand 10 after
316 if (base::StartsWith(value, chrome_proxy_fingerprint_prefix, 319 if (base::StartsWith(value, chrome_proxy_fingerprint_prefix,
317 base::CompareCase::INSENSITIVE_ASCII)) { 320 base::CompareCase::INSENSITIVE_ASCII)) {
318 continue; 321 continue;
319 } 322 }
320 } 323 }
321 values->push_back(value); 324 values->push_back(value);
322 } 325 }
323 } 326 }
324 327
325 } // namespace data_reduction_proxy 328 } // namespace data_reduction_proxy
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698