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 |