OLD | NEW |
1 // Copyright (c) 2006-2009 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2006-2009 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_SOCKET_SSL_CLIENT_SOCKET_NSS_H_ | 5 #ifndef NET_SOCKET_SSL_CLIENT_SOCKET_NSS_H_ |
6 #define NET_SOCKET_SSL_CLIENT_SOCKET_NSS_H_ | 6 #define NET_SOCKET_SSL_CLIENT_SOCKET_NSS_H_ |
7 | 7 |
8 // Work around https://bugzilla.mozilla.org/show_bug.cgi?id=455424 | 8 // Work around https://bugzilla.mozilla.org/show_bug.cgi?id=455424 |
9 // until NSS 3.12.2 comes out and we update to it. | 9 // until NSS 3.12.2 comes out and we update to it. |
10 #define Lock FOO_NSS_Lock | 10 #define Lock FOO_NSS_Lock |
(...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
119 // Used by Write function. | 119 // Used by Write function. |
120 scoped_refptr<IOBuffer> user_write_buf_; | 120 scoped_refptr<IOBuffer> user_write_buf_; |
121 int user_write_buf_len_; | 121 int user_write_buf_len_; |
122 | 122 |
123 // Set when handshake finishes. | 123 // Set when handshake finishes. |
124 scoped_refptr<X509Certificate> server_cert_; | 124 scoped_refptr<X509Certificate> server_cert_; |
125 CertVerifyResult server_cert_verify_result_; | 125 CertVerifyResult server_cert_verify_result_; |
126 | 126 |
127 // Stores client authentication information between ClientAuthHandler and | 127 // Stores client authentication information between ClientAuthHandler and |
128 // GetSSLCertRequestInfo calls. | 128 // GetSSLCertRequestInfo calls. |
129 CERTDistNames* client_auth_ca_names_; | 129 std::vector<scoped_refptr<X509Certificate> > client_certs_; |
130 bool client_auth_cert_needed_; | 130 bool client_auth_cert_needed_; |
131 | 131 |
132 scoped_ptr<CertVerifier> verifier_; | 132 scoped_ptr<CertVerifier> verifier_; |
133 | 133 |
134 bool completed_handshake_; | 134 bool completed_handshake_; |
135 | 135 |
136 enum State { | 136 enum State { |
137 STATE_NONE, | 137 STATE_NONE, |
138 STATE_HANDSHAKE, | 138 STATE_HANDSHAKE, |
139 STATE_VERIFY_CERT, | 139 STATE_VERIFY_CERT, |
140 STATE_VERIFY_CERT_COMPLETE, | 140 STATE_VERIFY_CERT_COMPLETE, |
141 }; | 141 }; |
142 State next_handshake_state_; | 142 State next_handshake_state_; |
143 | 143 |
144 // The NSS SSL state machine | 144 // The NSS SSL state machine |
145 PRFileDesc* nss_fd_; | 145 PRFileDesc* nss_fd_; |
146 | 146 |
147 // Buffers for the network end of the SSL state machine | 147 // Buffers for the network end of the SSL state machine |
148 memio_Private* nss_bufs_; | 148 memio_Private* nss_bufs_; |
149 | 149 |
150 static bool nss_options_initialized_; | 150 static bool nss_options_initialized_; |
151 }; | 151 }; |
152 | 152 |
153 } // namespace net | 153 } // namespace net |
154 | 154 |
155 #endif // NET_SOCKET_SSL_CLIENT_SOCKET_NSS_H_ | 155 #endif // NET_SOCKET_SSL_CLIENT_SOCKET_NSS_H_ |
OLD | NEW |