OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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_TOOLS_QUIC_STATELESS_REJECTOR_H_ | 5 #ifndef NET_TOOLS_QUIC_STATELESS_REJECTOR_H_ |
6 #define NET_TOOLS_QUIC_STATELESS_REJECTOR_H_ | 6 #define NET_TOOLS_QUIC_STATELESS_REJECTOR_H_ |
7 | 7 |
8 #include "base/strings/string_piece.h" | 8 #include "base/strings/string_piece.h" |
9 #include "net/quic/core/crypto/crypto_framer.h" | 9 #include "net/quic/core/crypto/crypto_framer.h" |
10 #include "net/quic/core/crypto/quic_crypto_server_config.h" | 10 #include "net/quic/core/crypto/quic_crypto_server_config.h" |
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
72 private: | 72 private: |
73 // Helper class which is passed in to | 73 // Helper class which is passed in to |
74 // QuicCryptoServerConfig::ValidateClientHello. | 74 // QuicCryptoServerConfig::ValidateClientHello. |
75 class ValidateCallback; | 75 class ValidateCallback; |
76 friend class ValidateCallback; | 76 friend class ValidateCallback; |
77 | 77 |
78 class ProcessClientHelloCallback; | 78 class ProcessClientHelloCallback; |
79 friend class ProcessClientHelloCallback; | 79 friend class ProcessClientHelloCallback; |
80 | 80 |
81 void ProcessClientHello( | 81 void ProcessClientHello( |
82 scoped_refptr<ValidateClientHelloResultCallback::Result> result, | 82 QuicReferenceCountedPointer<ValidateClientHelloResultCallback::Result> |
| 83 result, |
83 std::unique_ptr<StatelessRejector> rejector, | 84 std::unique_ptr<StatelessRejector> rejector, |
84 std::unique_ptr<StatelessRejector::ProcessDoneCallback> done_cb); | 85 std::unique_ptr<StatelessRejector::ProcessDoneCallback> done_cb); |
85 | 86 |
86 void ProcessClientHelloDone( | 87 void ProcessClientHelloDone( |
87 QuicErrorCode error, | 88 QuicErrorCode error, |
88 const std::string& error_details, | 89 const std::string& error_details, |
89 std::unique_ptr<CryptoHandshakeMessage> message, | 90 std::unique_ptr<CryptoHandshakeMessage> message, |
90 std::unique_ptr<StatelessRejector> rejector, | 91 std::unique_ptr<StatelessRejector> rejector, |
91 std::unique_ptr<StatelessRejector::ProcessDoneCallback> done_cb); | 92 std::unique_ptr<StatelessRejector::ProcessDoneCallback> done_cb); |
92 | 93 |
93 State state_; | 94 State state_; |
94 QuicErrorCode error_; | 95 QuicErrorCode error_; |
95 std::string error_details_; | 96 std::string error_details_; |
96 QuicVersion version_; | 97 QuicVersion version_; |
97 QuicVersionVector versions_; | 98 QuicVersionVector versions_; |
98 QuicConnectionId connection_id_; | 99 QuicConnectionId connection_id_; |
99 QuicConnectionId server_designated_connection_id_; | 100 QuicConnectionId server_designated_connection_id_; |
100 QuicByteCount chlo_packet_size_; | 101 QuicByteCount chlo_packet_size_; |
101 QuicSocketAddress client_address_; | 102 QuicSocketAddress client_address_; |
102 QuicSocketAddress server_address_; | 103 QuicSocketAddress server_address_; |
103 const QuicClock* clock_; | 104 const QuicClock* clock_; |
104 QuicRandom* random_; | 105 QuicRandom* random_; |
105 const QuicCryptoServerConfig* crypto_config_; | 106 const QuicCryptoServerConfig* crypto_config_; |
106 QuicCompressedCertsCache* compressed_certs_cache_; | 107 QuicCompressedCertsCache* compressed_certs_cache_; |
107 CryptoHandshakeMessage chlo_; | 108 CryptoHandshakeMessage chlo_; |
108 std::unique_ptr<CryptoHandshakeMessage> reply_; | 109 std::unique_ptr<CryptoHandshakeMessage> reply_; |
109 CryptoFramer crypto_framer_; | 110 CryptoFramer crypto_framer_; |
110 scoped_refptr<QuicSignedServerConfig> signed_config_; | 111 QuicReferenceCountedPointer<QuicSignedServerConfig> signed_config_; |
111 scoped_refptr<QuicCryptoNegotiatedParameters> params_; | 112 QuicReferenceCountedPointer<QuicCryptoNegotiatedParameters> params_; |
112 | 113 |
113 DISALLOW_COPY_AND_ASSIGN(StatelessRejector); | 114 DISALLOW_COPY_AND_ASSIGN(StatelessRejector); |
114 }; | 115 }; |
115 | 116 |
116 } // namespace net | 117 } // namespace net |
117 | 118 |
118 #endif // NET_TOOLS_QUIC_STATELESS_REJECTOR_H_ | 119 #endif // NET_TOOLS_QUIC_STATELESS_REJECTOR_H_ |
OLD | NEW |