diff options
| author | Carl Hetherington <cth@carlh.net> | 2017-06-05 14:41:27 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2017-06-05 14:41:27 +0100 |
| commit | 284f2473293bad0b28a7b9abd47e954328a61ab9 (patch) | |
| tree | 493d37c021ea2b1f4da93685d7d65f19b82c50d5 /src/certificate_chain.h | |
| parent | 3a217e6cce46127abaa1463c394d3baf05b02616 (diff) | |
Fix up management of certificate chain validity.
Diffstat (limited to 'src/certificate_chain.h')
| -rw-r--r-- | src/certificate_chain.h | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/src/certificate_chain.h b/src/certificate_chain.h index 657b9ce3..e38123eb 100644 --- a/src/certificate_chain.h +++ b/src/certificate_chain.h @@ -47,6 +47,15 @@ namespace xmlpp { class Node; } +struct certificates_validation1; +struct certificates_validation2; +struct certificates_validation3; +struct certificates_validation4; +struct certificates_validation5; +struct certificates_validation6; +struct certificates_validation7; +struct certificates_validation8; + namespace dcp { /** @class CertificateChain @@ -87,9 +96,11 @@ public: List leaf_to_root () const; List root_to_leaf () const; + List unordered () const; bool valid (std::string* reason = 0) const; - bool attempt_reorder (); + bool chain_valid () const; + bool private_key_valid () const; void sign (xmlpp::Element* parent, Standard standard) const; void add_signature_value (xmlpp::Node* parent, std::string ns) const; @@ -106,6 +117,16 @@ public: private: friend class ::certificates; + friend class ::certificates_validation1; + friend class ::certificates_validation2; + friend class ::certificates_validation3; + friend class ::certificates_validation4; + friend class ::certificates_validation5; + friend class ::certificates_validation6; + friend class ::certificates_validation7; + friend class ::certificates_validation8; + + bool chain_valid (List const & chain) const; /** Our certificates, not in any particular order */ List _certificates; |
