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

Side by Side Diff: net/base/port_util.h

Issue 1230313005: split port_util.h off of net_util.h (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: moar Created 5 years, 5 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 (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 NET_URL_REQUEST_HTTP_USER_AGENT_SETTINGS_H_ 5 #ifndef NET_BASE_NET_PORT_UTIL_
6 #define NET_URL_REQUEST_HTTP_USER_AGENT_SETTINGS_H_ 6 #define NET_BASE_NET_PORT_UTIL_
7 7
8 #include <string> 8 #include <string>
9 9
10 #include "base/basictypes.h" 10 #include "base/basictypes.h"
11 #include "net/base/net_export.h" 11 #include "net/base/net_export.h"
12 12
13 class GURL;
14
15 namespace net { 13 namespace net {
16 14
17 // The interface used by HTTP jobs to retrieve HTTP Accept-Language 15 // Checks if |port| is in the valid range (0 to 65535, though 0 is technically
18 // and User-Agent header values. 16 // reserved). Should be used before casting a port to a uint16_t.
19 class NET_EXPORT HttpUserAgentSettings { 17 NET_EXPORT bool IsPortValid(int port);
18
19 // Returns true if the port is in the range [0, 1023]. These ports are
20 // registered by IANA and typically need root access to listen on.
21 bool IsWellKnownPort(int port);
22
23 // Checks if the port is allowed for the specified scheme. Ports set as allowed
24 // with SetExplicitlyAllowedPorts() or by using ScopedPortException() will be
25 // considered allowed for any scheme.
26 NET_EXPORT bool IsPortAllowedForScheme(int port, const std::string& url_scheme);
27
28 // Returns the number of explicitly allowed ports; for testing.
29 NET_EXPORT_PRIVATE size_t GetCountOfExplicitlyAllowedPorts();
30
31 NET_EXPORT void SetExplicitlyAllowedPorts(const std::string& allowed_ports);
32
33 class NET_EXPORT ScopedPortException {
20 public: 34 public:
21 HttpUserAgentSettings() {} 35 explicit ScopedPortException(int port);
22 virtual ~HttpUserAgentSettings() {} 36 ~ScopedPortException();
23
24 // Gets the value of 'Accept-Language' header field.
25 virtual std::string GetAcceptLanguage() const = 0;
26
27 // Gets the UA string.
28 virtual std::string GetUserAgent() const = 0;
29 37
30 private: 38 private:
31 DISALLOW_COPY_AND_ASSIGN(HttpUserAgentSettings); 39 int port_;
40
41 DISALLOW_COPY_AND_ASSIGN(ScopedPortException);
32 }; 42 };
33 43
34 } // namespace net 44 } // namespace net
35 45
36 #endif // NET_URL_REQUEST_HTTP_USER_AGENT_SETTINGS_H_ 46 #endif // NET_BASE_NET_PORT_UTIL_
37
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698