Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1271)

Side by Side Diff: net/base/ssl_cert_request_info.h

Issue 6017010: Ensure that when using False Start + client auth, bad client certificates are not cached (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix mac compile Created 9 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | net/base/ssl_cert_request_info.cc » ('j') | net/http/http_network_transaction.cc » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. 1 // Copyright (c) 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_BASE_SSL_CERT_REQUEST_INFO_H_ 5 #ifndef NET_BASE_SSL_CERT_REQUEST_INFO_H_
6 #define NET_BASE_SSL_CERT_REQUEST_INFO_H_ 6 #define NET_BASE_SSL_CERT_REQUEST_INFO_H_
7 #pragma once 7 #pragma once
8 8
9 #include <string> 9 #include <string>
10 #include <vector> 10 #include <vector>
11 11
12 #include "base/ref_counted.h" 12 #include "base/ref_counted.h"
13 13
14 namespace net { 14 namespace net {
15 15
16 class X509Certificate; 16 class X509Certificate;
17 17
18 // The SSLCertRequestInfo class contains the info that allows a user to 18 // The SSLCertRequestInfo class contains the info that allows a user to
19 // select a certificate to send to the SSL server for client authentication. 19 // select a certificate to send to the SSL server for client authentication.
20 class SSLCertRequestInfo 20 class SSLCertRequestInfo
21 : public base::RefCountedThreadSafe<SSLCertRequestInfo> { 21 : public base::RefCountedThreadSafe<SSLCertRequestInfo> {
22 public: 22 public:
23 SSLCertRequestInfo(); 23 SSLCertRequestInfo();
24 24
25 // Resets the SSLCertRequestInfo as if no certificate had been requested.
wtc 2011/01/12 00:21:09 You just need to say "to zero/null/empty values".
26 void Reset();
27
25 // The host and port of the SSL server that requested client authentication. 28 // The host and port of the SSL server that requested client authentication.
26 std::string host_and_port; 29 std::string host_and_port;
27 30
28 // A list of client certificates that match the server's criteria in the 31 // A list of client certificates that match the server's criteria in the
29 // SSL CertificateRequest message. In TLS 1.0, the CertificateRequest 32 // SSL CertificateRequest message. In TLS 1.0, the CertificateRequest
30 // message is defined as: 33 // message is defined as:
31 // enum { 34 // enum {
32 // rsa_sign(1), dss_sign(2), rsa_fixed_dh(3), dss_fixed_dh(4), 35 // rsa_sign(1), dss_sign(2), rsa_fixed_dh(3), dss_fixed_dh(4),
33 // (255) 36 // (255)
34 // } ClientCertificateType; 37 // } ClientCertificateType;
35 // 38 //
36 // opaque DistinguishedName<1..2^16-1>; 39 // opaque DistinguishedName<1..2^16-1>;
37 // 40 //
38 // struct { 41 // struct {
39 // ClientCertificateType certificate_types<1..2^8-1>; 42 // ClientCertificateType certificate_types<1..2^8-1>;
40 // DistinguishedName certificate_authorities<3..2^16-1>; 43 // DistinguishedName certificate_authorities<3..2^16-1>;
41 // } CertificateRequest; 44 // } CertificateRequest;
42 std::vector<scoped_refptr<X509Certificate> > client_certs; 45 std::vector<scoped_refptr<X509Certificate> > client_certs;
43 46
44 private: 47 private:
45 friend class base::RefCountedThreadSafe<SSLCertRequestInfo>; 48 friend class base::RefCountedThreadSafe<SSLCertRequestInfo>;
46 49
47 ~SSLCertRequestInfo(); 50 ~SSLCertRequestInfo();
48 }; 51 };
49 52
50 } // namespace net 53 } // namespace net
51 54
52 #endif // NET_BASE_SSL_CERT_REQUEST_INFO_H_ 55 #endif // NET_BASE_SSL_CERT_REQUEST_INFO_H_
OLDNEW
« no previous file with comments | « no previous file | net/base/ssl_cert_request_info.cc » ('j') | net/http/http_network_transaction.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698