| OLD | NEW |
| 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 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_QUIC_QUIC_CONFIG_H_ | 5 #ifndef NET_QUIC_QUIC_CONFIG_H_ |
| 6 #define NET_QUIC_QUIC_CONFIG_H_ | 6 #define NET_QUIC_QUIC_CONFIG_H_ |
| 7 | 7 |
| 8 #include <string> | 8 #include <string> |
| 9 | 9 |
| 10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
| (...skipping 164 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 175 std::string* error_details) override; | 175 std::string* error_details) override; |
| 176 | 176 |
| 177 private: | 177 private: |
| 178 uint32 send_value_; | 178 uint32 send_value_; |
| 179 bool has_send_value_; | 179 bool has_send_value_; |
| 180 uint32 receive_value_; | 180 uint32 receive_value_; |
| 181 bool has_receive_value_; | 181 bool has_receive_value_; |
| 182 }; | 182 }; |
| 183 | 183 |
| 184 // Stores tag from CHLO or SHLO messages that are not negotiated. | 184 // Stores tag from CHLO or SHLO messages that are not negotiated. |
| 185 class NET_EXPORT_PRIVATE QuicFixedTag : public QuicConfigValue { | |
| 186 public: | |
| 187 QuicFixedTag(QuicTag name, QuicConfigPresence presence); | |
| 188 ~QuicFixedTag() override; | |
| 189 | |
| 190 bool HasSendValue() const; | |
| 191 | |
| 192 QuicTag GetSendValue() const; | |
| 193 | |
| 194 void SetSendValue(QuicTag value); | |
| 195 | |
| 196 bool HasReceivedValue() const; | |
| 197 | |
| 198 QuicTag GetReceivedValue() const; | |
| 199 | |
| 200 void SetReceivedValue(QuicTag value); | |
| 201 | |
| 202 // If has_send_value is true, serialises |tag_| and |send_value_| to |out|. | |
| 203 void ToHandshakeMessage(CryptoHandshakeMessage* out) const override; | |
| 204 | |
| 205 // Sets |value_| to the corresponding value from |client_hello_| if it exists. | |
| 206 QuicErrorCode ProcessPeerHello(const CryptoHandshakeMessage& peer_hello, | |
| 207 HelloType hello_type, | |
| 208 std::string* error_details) override; | |
| 209 | |
| 210 private: | |
| 211 QuicTag send_value_; | |
| 212 bool has_send_value_; | |
| 213 QuicTag receive_value_; | |
| 214 bool has_receive_value_; | |
| 215 }; | |
| 216 | |
| 217 // Stores tag from CHLO or SHLO messages that are not negotiated. | |
| 218 class NET_EXPORT_PRIVATE QuicFixedTagVector : public QuicConfigValue { | 185 class NET_EXPORT_PRIVATE QuicFixedTagVector : public QuicConfigValue { |
| 219 public: | 186 public: |
| 220 QuicFixedTagVector(QuicTag name, QuicConfigPresence presence); | 187 QuicFixedTagVector(QuicTag name, QuicConfigPresence presence); |
| 221 ~QuicFixedTagVector() override; | 188 ~QuicFixedTagVector() override; |
| 222 | 189 |
| 223 bool HasSendValues() const; | 190 bool HasSendValues() const; |
| 224 | 191 |
| 225 QuicTagVector GetSendValues() const; | 192 QuicTagVector GetSendValues() const; |
| 226 | 193 |
| 227 void SetSendValues(const QuicTagVector& values); | 194 void SetSendValues(const QuicTagVector& values); |
| (...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 341 | 308 |
| 342 uint32 GetInitialSessionFlowControlWindowToSend() const; | 309 uint32 GetInitialSessionFlowControlWindowToSend() const; |
| 343 | 310 |
| 344 bool HasReceivedInitialSessionFlowControlWindowBytes() const; | 311 bool HasReceivedInitialSessionFlowControlWindowBytes() const; |
| 345 | 312 |
| 346 uint32 ReceivedInitialSessionFlowControlWindowBytes() const; | 313 uint32 ReceivedInitialSessionFlowControlWindowBytes() const; |
| 347 | 314 |
| 348 // Sets socket receive buffer to transmit to the peer. | 315 // Sets socket receive buffer to transmit to the peer. |
| 349 void SetSocketReceiveBufferToSend(uint32 window_bytes); | 316 void SetSocketReceiveBufferToSend(uint32 window_bytes); |
| 350 | 317 |
| 351 uint32 GetSocketReceiveBufferToSend() const; | |
| 352 | |
| 353 bool HasReceivedSocketReceiveBuffer() const; | 318 bool HasReceivedSocketReceiveBuffer() const; |
| 354 | 319 |
| 355 uint32 ReceivedSocketReceiveBuffer() const; | 320 uint32 ReceivedSocketReceiveBuffer() const; |
| 356 | 321 |
| 357 bool negotiated() const; | 322 bool negotiated() const; |
| 358 | 323 |
| 359 // ToHandshakeMessage serialises the settings in this object as a series of | 324 // ToHandshakeMessage serialises the settings in this object as a series of |
| 360 // tags /value pairs and adds them to |out|. | 325 // tags /value pairs and adds them to |out|. |
| 361 void ToHandshakeMessage(CryptoHandshakeMessage* out) const; | 326 void ToHandshakeMessage(CryptoHandshakeMessage* out) const; |
| 362 | 327 |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 400 // Initial session flow control receive window in bytes. | 365 // Initial session flow control receive window in bytes. |
| 401 QuicFixedUint32 initial_session_flow_control_window_bytes_; | 366 QuicFixedUint32 initial_session_flow_control_window_bytes_; |
| 402 | 367 |
| 403 // Socket receive buffer in bytes. | 368 // Socket receive buffer in bytes. |
| 404 QuicFixedUint32 socket_receive_buffer_; | 369 QuicFixedUint32 socket_receive_buffer_; |
| 405 }; | 370 }; |
| 406 | 371 |
| 407 } // namespace net | 372 } // namespace net |
| 408 | 373 |
| 409 #endif // NET_QUIC_QUIC_CONFIG_H_ | 374 #endif // NET_QUIC_QUIC_CONFIG_H_ |
| OLD | NEW |