Chromium Code Reviews| Index: net/cert/internal/verify_certificate_chain.cc |
| diff --git a/net/cert/internal/verify_certificate_chain.cc b/net/cert/internal/verify_certificate_chain.cc |
| index f6a45b2435cc41cb96bcbd3da6b3aba91b758a79..b34dabe6dbfdc45a671224fdfdf7204a92c1fb00 100644 |
| --- a/net/cert/internal/verify_certificate_chain.cc |
| +++ b/net/cert/internal/verify_certificate_chain.cc |
| @@ -483,7 +483,8 @@ bool VerifyCertificateChain( |
| const std::vector<scoped_refptr<ParsedCertificate>>& cert_chain, |
| const TrustStore& trust_store, |
| const SignaturePolicy* signature_policy, |
| - const der::GeneralizedTime& time) { |
| + const der::GeneralizedTime& time, |
| + std::vector<scoped_refptr<ParsedCertificate>>* trusted_chain_out) { |
| if (cert_chain.empty()) |
| return false; |
| @@ -494,8 +495,11 @@ bool VerifyCertificateChain( |
| return false; |
| // Verify the chain. |
| - return VerifyCertificateChainAssumingTrustedRoot(full_chain, trust_store, |
| - signature_policy, time); |
| + bool success = VerifyCertificateChainAssumingTrustedRoot( |
| + full_chain, trust_store, signature_policy, time); |
| + if (success && trusted_chain_out != nullptr) |
| + *trusted_chain_out = full_chain; |
|
mattm
2016/06/16 22:08:46
Does
*trusted_chain_out = std::move(full_chain)
wo
eroman
2016/06/16 22:11:36
+1
ryanchung
2016/06/16 22:47:08
Done.
|
| + return success; |
| } |
| } // namespace net |