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

Unified Diff: net/tools/quic/stateless_rejector.cc

Issue 2353763002: Use refcounted ownership for ValidateClientHelloResultCallback::Result (Closed)
Patch Set: Created 4 years, 3 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 side-by-side diff with in-line comments
Download patch
Index: net/tools/quic/stateless_rejector.cc
diff --git a/net/tools/quic/stateless_rejector.cc b/net/tools/quic/stateless_rejector.cc
index 42bab60131db58d176659a6a338c6eb12f8cd8ab..1e121eb065b6559152cf9a7229d7bbe305e6dfb9 100644
--- a/net/tools/quic/stateless_rejector.cc
+++ b/net/tools/quic/stateless_rejector.cc
@@ -4,6 +4,7 @@
#include "net/tools/quic/stateless_rejector.h"
+#include "net/quic/core/quic_bug_tracker.h"
#include "net/quic/core/quic_crypto_server_stream.h"
#include "net/quic/core/quic_flags.h"
@@ -19,11 +20,11 @@ class StatelessRejector::ValidateCallback
~ValidateCallback() override {}
- void Run(std::unique_ptr<Result> result,
+ void Run(scoped_refptr<Result> result,
std::unique_ptr<ProofSource::Details> /* proof_source_details */)
override {
StatelessRejector* rejector_ptr = rejector_.get();
- rejector_ptr->ProcessClientHello(*result, std::move(rejector_),
+ rejector_ptr->ProcessClientHello(std::move(result), std::move(rejector_),
std::move(cb_));
}
@@ -79,11 +80,11 @@ void StatelessRejector::OnChlo(QuicVersion version,
}
void StatelessRejector::Process(std::unique_ptr<StatelessRejector> rejector,
- std::unique_ptr<ProcessDoneCallback> cb) {
+ std::unique_ptr<ProcessDoneCallback> done_cb) {
// If we were able to make a decision about this CHLO based purely on the
// information available in OnChlo, just invoke the done callback immediately.
if (rejector->state() != UNKNOWN) {
- cb->Run(std::move(rejector));
+ done_cb->Run(std::move(rejector));
return;
}
@@ -93,13 +94,13 @@ void StatelessRejector::Process(std::unique_ptr<StatelessRejector> rejector,
rejector_ptr->server_address_.address(), rejector_ptr->version_,
rejector_ptr->clock_, &rejector_ptr->proof_,
std::unique_ptr<ValidateCallback>(
- new ValidateCallback(std::move(rejector), std::move(cb))));
+ new ValidateCallback(std::move(rejector), std::move(done_cb))));
}
void StatelessRejector::ProcessClientHello(
- const ValidateClientHelloResultCallback::Result& result,
+ scoped_refptr<ValidateClientHelloResultCallback::Result> result,
std::unique_ptr<StatelessRejector> rejector,
- std::unique_ptr<StatelessRejector::ProcessDoneCallback> cb) {
+ std::unique_ptr<StatelessRejector::ProcessDoneCallback> done_cb) {
QuicCryptoNegotiatedParameters params;
DiversificationNonce diversification_nonce;
QuicErrorCode error = crypto_config_->ProcessClientHello(
@@ -118,7 +119,7 @@ void StatelessRejector::ProcessClientHello(
} else {
state_ = ACCEPTED;
}
- cb->Run(std::move(rejector));
+ done_cb->Run(std::move(rejector));
}
} // namespace net
« net/quic/core/crypto/quic_crypto_server_config.cc ('K') | « net/tools/quic/stateless_rejector.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698