OLD | NEW |
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_QUIC_QUIC_CRYPTO_SERVER_STREAM_H_ | 5 #ifndef NET_QUIC_QUIC_CRYPTO_SERVER_STREAM_H_ |
6 #define NET_QUIC_QUIC_CRYPTO_SERVER_STREAM_H_ | 6 #define NET_QUIC_QUIC_CRYPTO_SERVER_STREAM_H_ |
7 | 7 |
8 #include <cstdint> | 8 #include <cstdint> |
9 #include <memory> | 9 #include <memory> |
10 #include <string> | 10 #include <string> |
(...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
117 uint8_t NumHandshakeMessagesWithServerNonces() const override; | 117 uint8_t NumHandshakeMessagesWithServerNonces() const override; |
118 int NumServerConfigUpdateMessagesSent() const override; | 118 int NumServerConfigUpdateMessagesSent() const override; |
119 const CachedNetworkParameters* PreviousCachedNetworkParams() const override; | 119 const CachedNetworkParameters* PreviousCachedNetworkParams() const override; |
120 bool UseStatelessRejectsIfPeerSupported() const override; | 120 bool UseStatelessRejectsIfPeerSupported() const override; |
121 bool PeerSupportsStatelessRejects() const override; | 121 bool PeerSupportsStatelessRejects() const override; |
122 void SetPeerSupportsStatelessRejects( | 122 void SetPeerSupportsStatelessRejects( |
123 bool peer_supports_stateless_rejects) override; | 123 bool peer_supports_stateless_rejects) override; |
124 void SetPreviousCachedNetworkParams( | 124 void SetPreviousCachedNetworkParams( |
125 CachedNetworkParameters cached_network_params) override; | 125 CachedNetworkParameters cached_network_params) override; |
126 | 126 |
| 127 // NOTE: Indicating that the Expect-CT header should be sent here presents |
| 128 // a layering violation to some extent. The Expect-CT header only applies to |
| 129 // HTTP connections, while this class can be used for non-HTTP applications. |
| 130 // However, it is exposed here because that is the only place where the |
| 131 // configuration for the certificate used in the connection is accessible. |
| 132 bool ShouldSendExpectCTHeader() const { |
| 133 return signed_config_->send_expect_ct_header; |
| 134 } |
| 135 |
127 protected: | 136 protected: |
128 virtual void ProcessClientHello( | 137 virtual void ProcessClientHello( |
129 scoped_refptr<ValidateClientHelloResultCallback::Result> result, | 138 scoped_refptr<ValidateClientHelloResultCallback::Result> result, |
130 std::unique_ptr<ProofSource::Details> proof_source_details, | 139 std::unique_ptr<ProofSource::Details> proof_source_details, |
131 std::unique_ptr<ProcessClientHelloResultCallback> done_cb); | 140 std::unique_ptr<ProcessClientHelloResultCallback> done_cb); |
132 | 141 |
133 // Hook that allows the server to set QuicConfig defaults just | 142 // Hook that allows the server to set QuicConfig defaults just |
134 // before going through the parameter negotiation step. | 143 // before going through the parameter negotiation step. |
135 virtual void OverrideQuicConfigDefaults(QuicConfig* config); | 144 virtual void OverrideQuicConfigDefaults(QuicConfig* config); |
136 | 145 |
(...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
270 // ProcessClientHello and forward it to | 279 // ProcessClientHello and forward it to |
271 // FinishProcessingHandshakeMessageAfterProcessClientHello. | 280 // FinishProcessingHandshakeMessageAfterProcessClientHello. |
272 ProcessClientHelloCallback* process_client_hello_cb_; | 281 ProcessClientHelloCallback* process_client_hello_cb_; |
273 | 282 |
274 DISALLOW_COPY_AND_ASSIGN(QuicCryptoServerStream); | 283 DISALLOW_COPY_AND_ASSIGN(QuicCryptoServerStream); |
275 }; | 284 }; |
276 | 285 |
277 } // namespace net | 286 } // namespace net |
278 | 287 |
279 #endif // NET_QUIC_QUIC_CRYPTO_SERVER_STREAM_H_ | 288 #endif // NET_QUIC_QUIC_CRYPTO_SERVER_STREAM_H_ |
OLD | NEW |