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

Side by Side Diff: chrome/browser/safe_browsing/download_protection_service.cc

Issue 16290004: Update chrome/ to use scoped_refptr<T>::get() rather than implicit "operator T*" (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 6 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/safe_browsing/download_protection_service.h" 5 #include "chrome/browser/safe_browsing/download_protection_service.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/compiler_specific.h" 8 #include "base/compiler_specific.h"
9 #include "base/format_macros.h" 9 #include "base/format_macros.h"
10 #include "base/memory/scoped_ptr.h" 10 #include "base/memory/scoped_ptr.h"
(...skipping 219 matching lines...) Expand 10 before | Expand all | Expand 10 after
230 const DownloadProtectionService::CheckDownloadCallback& callback, 230 const DownloadProtectionService::CheckDownloadCallback& callback,
231 const scoped_refptr<SafeBrowsingUIManager>& ui_manager, 231 const scoped_refptr<SafeBrowsingUIManager>& ui_manager,
232 const scoped_refptr<SafeBrowsingDatabaseManager>& database_manager) 232 const scoped_refptr<SafeBrowsingDatabaseManager>& database_manager)
233 : DownloadSBClient(item, callback, ui_manager, 233 : DownloadSBClient(item, callback, ui_manager,
234 DOWNLOAD_URL_CHECKS_TOTAL, 234 DOWNLOAD_URL_CHECKS_TOTAL,
235 DOWNLOAD_URL_CHECKS_MALWARE), 235 DOWNLOAD_URL_CHECKS_MALWARE),
236 database_manager_(database_manager) { } 236 database_manager_(database_manager) { }
237 237
238 virtual void StartCheck() OVERRIDE { 238 virtual void StartCheck() OVERRIDE {
239 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO)); 239 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO));
240 if (!database_manager_ || database_manager_->CheckDownloadUrl( 240 if (!database_manager_.get() ||
241 url_chain_, this)) { 241 database_manager_->CheckDownloadUrl(url_chain_, this)) {
242 CheckDone(SB_THREAT_TYPE_SAFE); 242 CheckDone(SB_THREAT_TYPE_SAFE);
243 } else { 243 } else {
244 AddRef(); // SafeBrowsingService takes a pointer not a scoped_refptr. 244 AddRef(); // SafeBrowsingService takes a pointer not a scoped_refptr.
245 } 245 }
246 } 246 }
247 247
248 virtual bool IsDangerous(SBThreatType threat_type) const OVERRIDE { 248 virtual bool IsDangerous(SBThreatType threat_type) const OVERRIDE {
249 return threat_type == SB_THREAT_TYPE_BINARY_MALWARE_URL; 249 return threat_type == SB_THREAT_TYPE_BINARY_MALWARE_URL;
250 } 250 }
251 251
(...skipping 292 matching lines...) Expand 10 before | Expand all | Expand 10 after
544 if (!zipped_executable_) { 544 if (!zipped_executable_) {
545 PostFinishTask(SAFE, REASON_ARCHIVE_WITHOUT_BINARIES); 545 PostFinishTask(SAFE, REASON_ARCHIVE_WITHOUT_BINARIES);
546 return; 546 return;
547 } 547 }
548 OnFileFeatureExtractionDone(); 548 OnFileFeatureExtractionDone();
549 } 549 }
550 550
551 void CheckWhitelists() { 551 void CheckWhitelists() {
552 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO)); 552 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO));
553 DownloadCheckResultReason reason = REASON_MAX; 553 DownloadCheckResultReason reason = REASON_MAX;
554 if (!database_manager_) { 554 if (!database_manager_.get()) {
555 reason = REASON_SB_DISABLED; 555 reason = REASON_SB_DISABLED;
556 } else { 556 } else {
557 for (size_t i = 0; i < url_chain_.size(); ++i) { 557 for (size_t i = 0; i < url_chain_.size(); ++i) {
558 const GURL& url = url_chain_[i]; 558 const GURL& url = url_chain_[i];
559 if (url.is_valid() && 559 if (url.is_valid() &&
560 database_manager_->MatchDownloadWhitelistUrl(url)) { 560 database_manager_->MatchDownloadWhitelistUrl(url)) {
561 VLOG(2) << url << " is on the download whitelist."; 561 VLOG(2) << url << " is on the download whitelist.";
562 reason = REASON_WHITELISTED_URL; 562 reason = REASON_WHITELISTED_URL;
563 break; 563 break;
564 } 564 }
(...skipping 147 matching lines...) Expand 10 before | Expand all | Expand 10 after
712 for (int i = 1; i < chain.element_size(); ++i) { 712 for (int i = 1; i < chain.element_size(); ++i) {
713 scoped_refptr<net::X509Certificate> issuer = 713 scoped_refptr<net::X509Certificate> issuer =
714 net::X509Certificate::CreateFromBytes( 714 net::X509Certificate::CreateFromBytes(
715 chain.element(i).certificate().data(), 715 chain.element(i).certificate().data(),
716 chain.element(i).certificate().size()); 716 chain.element(i).certificate().size());
717 if (!issuer.get()) { 717 if (!issuer.get()) {
718 return false; 718 return false;
719 } 719 }
720 std::vector<std::string> whitelist_strings; 720 std::vector<std::string> whitelist_strings;
721 DownloadProtectionService::GetCertificateWhitelistStrings( 721 DownloadProtectionService::GetCertificateWhitelistStrings(
722 *cert, *issuer, &whitelist_strings); 722 *cert.get(), *issuer.get(), &whitelist_strings);
723 for (size_t j = 0; j < whitelist_strings.size(); ++j) { 723 for (size_t j = 0; j < whitelist_strings.size(); ++j) {
724 if (database_manager_->MatchDownloadWhitelistString( 724 if (database_manager_->MatchDownloadWhitelistString(
725 whitelist_strings[j])) { 725 whitelist_strings[j])) {
726 VLOG(2) << "Certificate matched whitelist, cert=" 726 VLOG(2) << "Certificate matched whitelist, cert="
727 << cert->subject().GetDisplayName() 727 << cert->subject().GetDisplayName()
728 << " issuer=" << issuer->subject().GetDisplayName(); 728 << " issuer=" << issuer->subject().GetDisplayName();
729 return true; 729 return true;
730 } 730 }
731 } 731 }
732 cert = issuer; 732 cert = issuer;
(...skipping 213 matching lines...) Expand 10 before | Expand all | Expand 10 after
946 std::string url = kDownloadRequestUrl; 946 std::string url = kDownloadRequestUrl;
947 std::string api_key = google_apis::GetAPIKey(); 947 std::string api_key = google_apis::GetAPIKey();
948 if (!api_key.empty()) { 948 if (!api_key.empty()) {
949 base::StringAppendF(&url, "?key=%s", 949 base::StringAppendF(&url, "?key=%s",
950 net::EscapeQueryParamValue(api_key, true).c_str()); 950 net::EscapeQueryParamValue(api_key, true).c_str());
951 } 951 }
952 return url; 952 return url;
953 } 953 }
954 954
955 } // namespace safe_browsing 955 } // namespace safe_browsing
OLDNEW
« no previous file with comments | « chrome/browser/safe_browsing/database_manager.cc ('k') | chrome/browser/safe_browsing/download_protection_service_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698