diff options
author | willchan@chromium.org <willchan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-10-04 15:02:18 +0000 |
---|---|---|
committer | willchan@chromium.org <willchan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-10-04 15:02:18 +0000 |
commit | b19537cdc317d6baab5183e111668ccc88c661f6 (patch) | |
tree | ff0677915cf56d7ca78150f6a279960c0c243907 /net/socket | |
parent | d10f0a0460e6c508adf61e6825f390e6c346091f (diff) | |
download | chromium_src-b19537cdc317d6baab5183e111668ccc88c661f6.zip chromium_src-b19537cdc317d6baab5183e111668ccc88c661f6.tar.gz chromium_src-b19537cdc317d6baab5183e111668ccc88c661f6.tar.bz2 |
Introduce a new CompletionCallback and TestCompletionCallback.
Start using it in DnsRRResolver.
BUG=98719
TEST=none
Review URL: http://codereview.chromium.org/8095026
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@103885 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/socket')
-rw-r--r-- | net/socket/dns_cert_provenance_checker.cc | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/net/socket/dns_cert_provenance_checker.cc b/net/socket/dns_cert_provenance_checker.cc index 38e6bbd..04cbce8 100644 --- a/net/socket/dns_cert_provenance_checker.cc +++ b/net/socket/dns_cert_provenance_checker.cc @@ -18,6 +18,7 @@ #include "base/base64.h" #include "base/basictypes.h" +#include "base/bind.h" #include "base/lazy_instance.h" #include "base/memory/scoped_ptr.h" #include "base/pickle.h" @@ -96,9 +97,7 @@ class DnsCertProvenanceCheck : public base::NonThreadSafe { dnsrr_resolver_(dnsrr_resolver), delegate_(delegate), der_certs_(der_certs.size()), - handle_(DnsRRResolver::kInvalidHandle), - ALLOW_THIS_IN_INITIALIZER_LIST(callback_( - this, &DnsCertProvenanceCheck::ResolutionComplete)) { + handle_(DnsRRResolver::kInvalidHandle) { for (size_t i = 0; i < der_certs.size(); i++) der_certs_[i] = der_certs[i].as_string(); } @@ -133,8 +132,10 @@ class DnsCertProvenanceCheck : public base::NonThreadSafe { domain_.append(kBaseCertName); handle_ = dnsrr_resolver_->Resolve( - domain_, kDNS_TXT, 0 /* flags */, &callback_, &response_, - 0 /* priority */, BoundNetLog()); + domain_, kDNS_TXT, 0 /* flags */, + base::Bind(&DnsCertProvenanceCheck::ResolutionComplete, + base::Unretained(this)), + &response_, 0 /* priority */, BoundNetLog()); if (handle_ == DnsRRResolver::kInvalidHandle) { LOG(ERROR) << "Failed to resolve " << domain_ << " for " << hostname_; delete this; @@ -200,7 +201,6 @@ class DnsCertProvenanceCheck : public base::NonThreadSafe { std::vector<std::string> der_certs_; RRResponse response_; DnsRRResolver::Handle handle_; - OldCompletionCallbackImpl<DnsCertProvenanceCheck> callback_; }; SECKEYPublicKey* GetServerPubKey() { |