| 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_CRYPTO_CRYPTO_HANDSHAKE_H_ | 5 #ifndef NET_QUIC_CRYPTO_CRYPTO_HANDSHAKE_H_ |
| 6 #define NET_QUIC_CRYPTO_CRYPTO_HANDSHAKE_H_ | 6 #define NET_QUIC_CRYPTO_CRYPTO_HANDSHAKE_H_ |
| 7 | 7 |
| 8 #include <string> | 8 #include <string> |
| 9 #include <vector> | 9 #include <vector> |
| 10 | 10 |
| (...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 130 // are big-endian and the pair is a P-256 public key. | 130 // are big-endian and the pair is a P-256 public key. |
| 131 std::string channel_id; | 131 std::string channel_id; |
| 132 | 132 |
| 133 // Used when generating proof signature when sending server config updates. | 133 // Used when generating proof signature when sending server config updates. |
| 134 bool x509_ecdsa_supported; | 134 bool x509_ecdsa_supported; |
| 135 bool x509_supported; | 135 bool x509_supported; |
| 136 | 136 |
| 137 // Used to generate cert chain when sending server config updates. | 137 // Used to generate cert chain when sending server config updates. |
| 138 std::string client_common_set_hashes; | 138 std::string client_common_set_hashes; |
| 139 std::string client_cached_cert_hashes; | 139 std::string client_cached_cert_hashes; |
| 140 |
| 141 // Default to false; set to true if the client indicates that it supports sct |
| 142 // by sending CSCT tag with an empty value in client hello. |
| 143 bool sct_supported_by_client; |
| 140 }; | 144 }; |
| 141 | 145 |
| 142 struct NET_EXPORT_PRIVATE QuicCryptoProof { | 146 struct NET_EXPORT_PRIVATE QuicCryptoProof { |
| 143 QuicCryptoProof(); | 147 QuicCryptoProof(); |
| 144 ~QuicCryptoProof(); | 148 ~QuicCryptoProof(); |
| 145 | 149 |
| 146 std::string signature; | 150 std::string signature; |
| 147 // QuicCryptoProof does not take ownership of |certs|. | 151 // QuicCryptoProof does not take ownership of |certs|. |
| 148 const std::vector<std::string>* certs; | 152 const std::vector<std::string>* certs; |
| 153 std::string cert_sct; |
| 149 }; | 154 }; |
| 150 | 155 |
| 151 // QuicCryptoConfig contains common configuration between clients and servers. | 156 // QuicCryptoConfig contains common configuration between clients and servers. |
| 152 class NET_EXPORT_PRIVATE QuicCryptoConfig { | 157 class NET_EXPORT_PRIVATE QuicCryptoConfig { |
| 153 public: | 158 public: |
| 154 // kInitialLabel is a constant that is used when deriving the initial | 159 // kInitialLabel is a constant that is used when deriving the initial |
| 155 // (non-forward secure) keys for the connection in order to tie the resulting | 160 // (non-forward secure) keys for the connection in order to tie the resulting |
| 156 // key to this protocol. | 161 // key to this protocol. |
| 157 static const char kInitialLabel[]; | 162 static const char kInitialLabel[]; |
| 158 | 163 |
| (...skipping 17 matching lines...) Expand all Loading... |
| 176 | 181 |
| 177 const CommonCertSets* common_cert_sets; | 182 const CommonCertSets* common_cert_sets; |
| 178 | 183 |
| 179 private: | 184 private: |
| 180 DISALLOW_COPY_AND_ASSIGN(QuicCryptoConfig); | 185 DISALLOW_COPY_AND_ASSIGN(QuicCryptoConfig); |
| 181 }; | 186 }; |
| 182 | 187 |
| 183 } // namespace net | 188 } // namespace net |
| 184 | 189 |
| 185 #endif // NET_QUIC_CRYPTO_CRYPTO_HANDSHAKE_H_ | 190 #endif // NET_QUIC_CRYPTO_CRYPTO_HANDSHAKE_H_ |
| OLD | NEW |