OLD | NEW |
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 NET_SOCKET_TCP_SOCKET_POSIX_H_ | 5 #ifndef NET_SOCKET_TCP_SOCKET_POSIX_H_ |
6 #define NET_SOCKET_TCP_SOCKET_POSIX_H_ | 6 #define NET_SOCKET_TCP_SOCKET_POSIX_H_ |
7 | 7 |
8 #include "base/basictypes.h" | 8 #include <stdint.h> |
| 9 |
9 #include "base/callback.h" | 10 #include "base/callback.h" |
10 #include "base/compiler_specific.h" | 11 #include "base/compiler_specific.h" |
| 12 #include "base/macros.h" |
11 #include "base/memory/scoped_ptr.h" | 13 #include "base/memory/scoped_ptr.h" |
12 #include "base/time/time.h" | 14 #include "base/time/time.h" |
13 #include "net/base/address_family.h" | 15 #include "net/base/address_family.h" |
14 #include "net/base/completion_callback.h" | 16 #include "net/base/completion_callback.h" |
15 #include "net/base/net_export.h" | 17 #include "net/base/net_export.h" |
16 #include "net/log/net_log.h" | 18 #include "net/log/net_log.h" |
17 | 19 |
18 namespace net { | 20 namespace net { |
19 | 21 |
20 class AddressList; | 22 class AddressList; |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
52 | 54 |
53 // Sets various socket options. | 55 // Sets various socket options. |
54 // The commonly used options for server listening sockets: | 56 // The commonly used options for server listening sockets: |
55 // - SetAddressReuse(true). | 57 // - SetAddressReuse(true). |
56 int SetDefaultOptionsForServer(); | 58 int SetDefaultOptionsForServer(); |
57 // The commonly used options for client sockets and accepted sockets: | 59 // The commonly used options for client sockets and accepted sockets: |
58 // - SetNoDelay(true); | 60 // - SetNoDelay(true); |
59 // - SetKeepAlive(true, 45). | 61 // - SetKeepAlive(true, 45). |
60 void SetDefaultOptionsForClient(); | 62 void SetDefaultOptionsForClient(); |
61 int SetAddressReuse(bool allow); | 63 int SetAddressReuse(bool allow); |
62 int SetReceiveBufferSize(int32 size); | 64 int SetReceiveBufferSize(int32_t size); |
63 int SetSendBufferSize(int32 size); | 65 int SetSendBufferSize(int32_t size); |
64 bool SetKeepAlive(bool enable, int delay); | 66 bool SetKeepAlive(bool enable, int delay); |
65 bool SetNoDelay(bool no_delay); | 67 bool SetNoDelay(bool no_delay); |
66 | 68 |
67 // Gets the estimated RTT. Returns false if the RTT is | 69 // Gets the estimated RTT. Returns false if the RTT is |
68 // unavailable. May also return false when estimated RTT is 0. | 70 // unavailable. May also return false when estimated RTT is 0. |
69 bool GetEstimatedRoundTripTime(base::TimeDelta* out_rtt) const | 71 bool GetEstimatedRoundTripTime(base::TimeDelta* out_rtt) const |
70 WARN_UNUSED_RESULT; | 72 WARN_UNUSED_RESULT; |
71 | 73 |
72 void Close(); | 74 void Close(); |
73 | 75 |
(...skipping 142 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
216 bool logging_multiple_connect_attempts_; | 218 bool logging_multiple_connect_attempts_; |
217 | 219 |
218 BoundNetLog net_log_; | 220 BoundNetLog net_log_; |
219 | 221 |
220 DISALLOW_COPY_AND_ASSIGN(TCPSocketPosix); | 222 DISALLOW_COPY_AND_ASSIGN(TCPSocketPosix); |
221 }; | 223 }; |
222 | 224 |
223 } // namespace net | 225 } // namespace net |
224 | 226 |
225 #endif // NET_SOCKET_TCP_SOCKET_POSIX_H_ | 227 #endif // NET_SOCKET_TCP_SOCKET_POSIX_H_ |
OLD | NEW |