OLD | NEW |
---|---|
(Empty) | |
1 // Copyright (c) 2015 The Chromium Authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 #include "net/cert/mock_client_cert_verifier.h" | |
6 | |
7 #include "net/base/net_errors.h" | |
8 #include "net/cert/x509_certificate.h" | |
9 | |
10 namespace net { | |
11 | |
12 struct MockClientCertVerifier::Rule { | |
13 Rule(X509Certificate* cert, int rv) : cert(cert), rv(rv) { DCHECK(cert); } | |
14 | |
15 scoped_refptr<X509Certificate> cert; | |
16 int rv; | |
17 }; | |
18 | |
19 MockClientCertVerifier::MockClientCertVerifier() | |
20 : default_result_(ERR_CERT_INVALID) {} | |
21 | |
22 MockClientCertVerifier::~MockClientCertVerifier() {} | |
23 | |
24 int MockClientCertVerifier::Verify(X509Certificate* cert, | |
25 const CompletionCallback& callback, | |
26 scoped_ptr<Request>* out_req) { | |
27 RuleList::const_iterator it; | |
davidben
2016/02/17 22:46:03
Unused variable?
ryanchung
2016/02/18 01:07:26
Done.
| |
28 for (const Rule& rule : rules_) { | |
29 // Check just the server cert. Intermediates will be ignored. | |
30 if (rule.cert->Equals(cert)) | |
31 return rule.rv; | |
32 } | |
33 return default_result_; | |
34 } | |
35 | |
36 void MockClientCertVerifier::AddResultForCert(X509Certificate* cert, int rv) { | |
37 Rule rule(cert, rv); | |
38 rules_.push_back(rule); | |
39 } | |
40 | |
41 } // namespace net | |
OLD | NEW |