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

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

Issue 6935032: Include full redirect chain in downloads safebrowsing ping. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 9 years, 7 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) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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/protocol_manager.h" 5 #include "chrome/browser/safe_browsing/protocol_manager.h"
6 6
7 #ifndef NDEBUG 7 #ifndef NDEBUG
8 #include "base/base64.h" 8 #include "base/base64.h"
9 #endif 9 #endif
10 #include "base/environment.h" 10 #include "base/environment.h"
(...skipping 642 matching lines...) Expand 10 before | Expand all | Expand 10 after
653 GURL report_url = SafeBrowsingHitUrl(malicious_url, page_url, 653 GURL report_url = SafeBrowsingHitUrl(malicious_url, page_url,
654 referrer_url, is_subresource, 654 referrer_url, is_subresource,
655 threat_type); 655 threat_type);
656 URLFetcher* report = new URLFetcher(report_url, URLFetcher::GET, this); 656 URLFetcher* report = new URLFetcher(report_url, URLFetcher::GET, this);
657 report->set_load_flags(net::LOAD_DISABLE_CACHE); 657 report->set_load_flags(net::LOAD_DISABLE_CACHE);
658 report->set_request_context(request_context_getter_); 658 report->set_request_context(request_context_getter_);
659 report->Start(); 659 report->Start();
660 safebrowsing_reports_.insert(report); 660 safebrowsing_reports_.insert(report);
661 } 661 }
662 662
663 void SafeBrowsingProtocolManager::ReportSafeBrowsingHitWithChain(
664 const std::vector<GURL>& url_chain,
665 const GURL& referrer_url,
666 bool is_subresource,
667 SafeBrowsingService::UrlCheckResult threat_type) {
668 std::string post_data;
669 for (size_t i = 0; i < url_chain.size(); ++i)
670 post_data += url_chain[i].spec() + "\n";
671
672 GURL report_url = SafeBrowsingHitUrl(url_chain.back(), url_chain.front(),
noelutz 2011/05/06 04:24:12 Do you ever check that there is at least one eleme
panayiotis 2011/05/09 19:44:16 A check would be nice yes. On 2011/05/06 04:24:1
mattm 2011/05/10 02:26:09 Added a DCHECK to DownloadSBClient constructor
673 referrer_url, is_subresource,
674 threat_type);
675 URLFetcher* report = new URLFetcher(report_url, URLFetcher::POST, this);
676 report->set_load_flags(net::LOAD_DISABLE_CACHE);
677 report->set_request_context(request_context_getter_);
678 report->set_upload_data("text/plain", post_data);
679 report->Start();
680 safebrowsing_reports_.insert(report);
681 }
682
663 // Sends malware details for users who opt-in. 683 // Sends malware details for users who opt-in.
664 void SafeBrowsingProtocolManager::ReportMalwareDetails( 684 void SafeBrowsingProtocolManager::ReportMalwareDetails(
665 const std::string& report) { 685 const std::string& report) {
666 GURL report_url = MalwareDetailsUrl(); 686 GURL report_url = MalwareDetailsUrl();
667 URLFetcher* fetcher = new URLFetcher(report_url, URLFetcher::POST, this); 687 URLFetcher* fetcher = new URLFetcher(report_url, URLFetcher::POST, this);
668 fetcher->set_load_flags(net::LOAD_DISABLE_CACHE); 688 fetcher->set_load_flags(net::LOAD_DISABLE_CACHE);
669 fetcher->set_request_context(request_context_getter_); 689 fetcher->set_request_context(request_context_getter_);
670 fetcher->set_upload_data("application/octet-stream", report); 690 fetcher->set_upload_data("application/octet-stream", report);
671 // Don't try too hard to send reports on failures. 691 // Don't try too hard to send reports on failures.
672 fetcher->set_automatically_retry_on_5xx(false); 692 fetcher->set_automatically_retry_on_5xx(false);
(...skipping 142 matching lines...) Expand 10 before | Expand all | Expand 10 after
815 if (!additional_query_.empty()) { 835 if (!additional_query_.empty()) {
816 if (next_url.find("?") != std::string::npos) { 836 if (next_url.find("?") != std::string::npos) {
817 next_url.append("&"); 837 next_url.append("&");
818 } else { 838 } else {
819 next_url.append("?"); 839 next_url.append("?");
820 } 840 }
821 next_url.append(additional_query_); 841 next_url.append(additional_query_);
822 } 842 }
823 return GURL(next_url); 843 return GURL(next_url);
824 } 844 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698