summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorpanayiotis@google.com <panayiotis@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2011-05-11 19:50:35 +0000
committerpanayiotis@google.com <panayiotis@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2011-05-11 19:50:35 +0000
commit0f5525558f76c9f60fa05266b19e6e0102e3137c (patch)
tree9e4e20eb65442bae9a69202e6811f04d6821c515
parentf3c93ecc2083de148f8702ae9a5c0d9459711585 (diff)
downloadchromium_src-0f5525558f76c9f60fa05266b19e6e0102e3137c.zip
chromium_src-0f5525558f76c9f60fa05266b19e6e0102e3137c.tar.gz
chromium_src-0f5525558f76c9f60fa05266b19e6e0102e3137c.tar.bz2
SafeBrowsing Opt-in Malware Reports: Collect remote ip:port pairs for requests that were not fetched via a proxy.
Review URL: http://codereview.chromium.org/6880285 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85022 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/browser/safe_browsing/malware_details_cache.cc5
-rw-r--r--chrome/browser/safe_browsing/malware_details_unittest.cc8
2 files changed, 12 insertions, 1 deletions
diff --git a/chrome/browser/safe_browsing/malware_details_cache.cc b/chrome/browser/safe_browsing/malware_details_cache.cc
index 51e363c..44e91e8 100644
--- a/chrome/browser/safe_browsing/malware_details_cache.cc
+++ b/chrome/browser/safe_browsing/malware_details_cache.cc
@@ -15,6 +15,7 @@
#include "chrome/browser/safe_browsing/safe_browsing_service.h"
#include "chrome/browser/safe_browsing/report.pb.h"
#include "content/browser/browser_thread.h"
+#include "net/base/host_port_pair.h"
#include "net/base/load_flags.h"
#include "net/http/http_response_headers.h"
#include "net/url_request/url_request_context_getter.h"
@@ -165,6 +166,10 @@ void MalwareDetailsCacheCollector::ReadResponse(
pb_header->set_value(value);
}
}
+
+ if (!source->was_fetched_via_proxy()) {
+ pb_response->set_remote_ip(source->socket_address().ToString());
+ }
}
void MalwareDetailsCacheCollector::ReadData(
diff --git a/chrome/browser/safe_browsing/malware_details_unittest.cc b/chrome/browser/safe_browsing/malware_details_unittest.cc
index f13469b..faca178 100644
--- a/chrome/browser/safe_browsing/malware_details_unittest.cc
+++ b/chrome/browser/safe_browsing/malware_details_unittest.cc
@@ -56,6 +56,7 @@ void WriteHeaders(disk_cache::Entry* entry, const std::string headers) {
net::HttpResponseInfo responseinfo;
std::string raw_headers = net::HttpUtil::AssembleRawHeaders(
headers.c_str(), headers.size());
+ responseinfo.socket_address = net::HostPortPair("1.2.3.4", 80);
responseinfo.headers = new net::HttpResponseHeaders(raw_headers);
Pickle pickle;
@@ -96,7 +97,6 @@ void WriteToEntry(disk_cache::Backend* cache, const std::string key,
WriteHeaders(entry, headers);
WriteData(entry, data);
-
entry->Close();
}
@@ -276,6 +276,10 @@ class MalwareDetailsTest : public RenderViewHostTestHarness {
EXPECT_EQ(expected->response().bodydigest(),
resource->response().bodydigest());
}
+
+ // Verify IP:port pair
+ EXPECT_EQ(expected->response().remote_ip(),
+ resource->response().remote_ip());
}
BrowserThread ui_thread_;
@@ -534,6 +538,7 @@ TEST_F(MalwareDetailsTest, HTTPCache) {
pb_response->set_body(kLandingData);
pb_response->set_bodylength(37);
pb_response->set_bodydigest("9ca97475598a79bc1e8fc9bd6c72cd35");
+ pb_response->set_remote_ip("1.2.3.4:80");
pb_resource = expected.add_resources();
pb_resource->set_id(1);
@@ -546,6 +551,7 @@ TEST_F(MalwareDetailsTest, HTTPCache) {
pb_response->set_body(kMalwareData);
pb_response->set_bodylength(10);
pb_response->set_bodydigest("581373551c43d4cf33bfb3b26838ff95");
+ pb_response->set_remote_ip("1.2.3.4:80");
expected.set_complete(true);
VerifyResults(actual, expected);