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

Unified Diff: chrome/browser/safe_browsing/client_side_detection_service.h

Issue 7635010: Add support for client-side phishing detection for non-UMA users. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Merge Created 9 years, 4 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: chrome/browser/safe_browsing/client_side_detection_service.h
diff --git a/chrome/browser/safe_browsing/client_side_detection_service.h b/chrome/browser/safe_browsing/client_side_detection_service.h
index 864ab7677b06913e1c11b79cfebd5b5f8c2f46f4..3af1626d6600aadef8f6ee545889881ad206b7e4 100644
--- a/chrome/browser/safe_browsing/client_side_detection_service.h
+++ b/chrome/browser/safe_browsing/client_side_detection_service.h
@@ -36,6 +36,7 @@
#include "net/base/net_util.h"
class RenderProcessHost;
+class SafeBrowsingService;
namespace base {
class TimeDelta;
@@ -151,6 +152,8 @@ class ClientSideDetectionService : public URLFetcher::Delegate,
FRIEND_TEST_ALL_PREFIXES(ClientSideDetectionServiceTest, IsBadIpAddress);
FRIEND_TEST_ALL_PREFIXES(ClientSideDetectionServiceTest,
ModelHasValidHashIds);
+ FRIEND_TEST_ALL_PREFIXES(ClientSideDetectionServiceTest,
+ SanitizeRequestForPingback);
// CacheState holds all information necessary to respond to a caller without
// actually making a HTTP request.
@@ -181,6 +184,14 @@ class ClientSideDetectionService : public URLFetcher::Delegate,
static const base::TimeDelta kNegativeCacheInterval;
static const base::TimeDelta kPositiveCacheInterval;
+ // Given a ClientSidePhishingRequest populated by the renderer and browser
+ // feature extractors, sanitizes it so that no data specifically identifying
+ // the URL or page content is included. This is used when sending a pingback
+ // if the user is not opted in to UMA.
+ static void SanitizeRequestForPingback(
+ const ClientPhishingRequest& original_request,
+ ClientPhishingRequest* sanitized_request);
+
// Starts sending the request to the client-side detection frontends.
// This method takes ownership of both pointers.
void StartClientReportPhishingRequest(
@@ -237,6 +248,9 @@ class ClientSideDetectionService : public URLFetcher::Delegate,
scoped_ptr<base::TimeDelta> model_max_age_;
scoped_ptr<URLFetcher> model_fetcher_;
+ // This pointer may be NULL if SafeBrowsing is disabled.
+ scoped_refptr<SafeBrowsingService> sb_service_;
+
// Map of client report phishing request to the corresponding callback that
// has to be invoked when the request is done.
struct ClientReportInfo;

Powered by Google App Engine
This is Rietveld 408576698