summaryrefslogtreecommitdiffstats
path: root/net/quic/crypto/proof_verifier.h
diff options
context:
space:
mode:
Diffstat (limited to 'net/quic/crypto/proof_verifier.h')
-rw-r--r--net/quic/crypto/proof_verifier.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/net/quic/crypto/proof_verifier.h b/net/quic/crypto/proof_verifier.h
index 3b47776..50d1635 100644
--- a/net/quic/crypto/proof_verifier.h
+++ b/net/quic/crypto/proof_verifier.h
@@ -21,6 +21,13 @@ class NET_EXPORT_PRIVATE ProofVerifyDetails {
virtual ~ProofVerifyDetails() {}
};
+// ProofVerifyContext is an abstract class that acts as a container for any
+// implementation specific context that a ProofVerifier needs.
+class NET_EXPORT_PRIVATE ProofVerifyContext {
+ public:
+ virtual ~ProofVerifyContext() {}
+};
+
// ProofVerifierCallback provides a generic mechanism for a ProofVerifier to
// call back after an asynchronous verification.
class NET_EXPORT_PRIVATE ProofVerifierCallback {
@@ -60,6 +67,10 @@ class NET_EXPORT_PRIVATE ProofVerifier {
// description of the problem. In either case it may set |*details|, which the
// caller takes ownership of.
//
+ // |context| specifies an implementation specific struct (which may be NULL
+ // for some implementations) that provides useful information for the
+ // verifier, e.g. logging handles.
+ //
// This function may also return PENDING, in which case the ProofVerifier
// will call back, on the original thread, via |callback| when complete.
// In this case, the ProofVerifier will take ownership of |callback|.
@@ -70,6 +81,7 @@ class NET_EXPORT_PRIVATE ProofVerifier {
const std::string& server_config,
const std::vector<std::string>& certs,
const std::string& signature,
+ const ProofVerifyContext* context,
std::string* error_details,
scoped_ptr<ProofVerifyDetails>* details,
ProofVerifierCallback* callback) = 0;