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

Unified Diff: chrome/browser/ssl/ssl_blocking_page.cc

Issue 21572002: Add UMA entry for intranet SSL warnings (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Needed to move the unit tests as well Created 7 years, 5 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/ssl/ssl_blocking_page.cc
diff --git a/chrome/browser/ssl/ssl_blocking_page.cc b/chrome/browser/ssl/ssl_blocking_page.cc
index 5b45b3564b8caa5db5272740e053e82c4856108c..af20ed5066e0a4ddb37445f1f16681d3011b7e9e 100644
--- a/chrome/browser/ssl/ssl_blocking_page.cc
+++ b/chrome/browser/ssl/ssl_blocking_page.cc
@@ -29,6 +29,7 @@
#include "grit/browser_resources.h"
#include "grit/generated_resources.h"
#include "net/base/net_errors.h"
+#include "net/base/net_util.h"
#include "ui/base/l10n/l10n_util.h"
#include "ui/base/resource/resource_bundle.h"
#include "ui/webui/jstemplate_builder.h"
@@ -82,6 +83,8 @@ enum SSLBlockingPageEvent {
DONT_PROCEED_AUTHORITY,
MORE,
SHOW_UNDERSTAND,
+ SHOW_INTERNAL_HOSTNAME,
+ PROCEED_INTERNAL_HOSTNAME,
UNUSED_BLOCKING_PAGE_EVENT,
};
@@ -95,6 +98,7 @@ void RecordSSLBlockingPageTimeStats(
bool proceed,
int cert_error,
bool overridable,
+ bool internal,
const base::TimeTicks& start_time,
const base::TimeTicks& end_time) {
UMA_HISTOGRAM_ENUMERATION("interstitial.ssl_error_type",
@@ -110,6 +114,8 @@ void RecordSSLBlockingPageTimeStats(
if (proceed) {
RecordSSLBlockingPageEventStats(PROCEED_OVERRIDABLE);
HISTOGRAM_INTERSTITIAL_LARGE_TIME("interstitial.ssl_accept_time", delta);
+ if (internal)
+ RecordSSLBlockingPageEventStats(PROCEED_INTERNAL_HOSTNAME);
} else if (!proceed) {
RecordSSLBlockingPageEventStats(DONT_PROCEED_OVERRIDABLE);
HISTOGRAM_INTERSTITIAL_LARGE_TIME("interstitial.ssl_reject_time", delta);
@@ -180,12 +186,19 @@ SSLBlockingPage::SSLBlockingPage(
ssl_info_(ssl_info),
request_url_(request_url),
overridable_(overridable),
- strict_enforcement_(strict_enforcement) {
+ strict_enforcement_(strict_enforcement),
+ internal_(false) {
trialCondition_ = base::FieldTrialList::FindFullName(kStudyName);
+ if (net::IsHostnameNonUnique(request_url_.HostNoBrackets()))
+ internal_ = true;
+
RecordSSLBlockingPageEventStats(SHOW_ALL);
- if (overridable_ && !strict_enforcement_)
+ if (overridable_ && !strict_enforcement_) {
RecordSSLBlockingPageEventStats(SHOW_OVERRIDABLE);
+ if (internal_)
+ RecordSSLBlockingPageEventStats(SHOW_INTERNAL_HOSTNAME);
+ }
interstitial_page_ = InterstitialPage::Create(
web_contents_, true, request_url, this);
@@ -195,10 +208,12 @@ SSLBlockingPage::SSLBlockingPage(
SSLBlockingPage::~SSLBlockingPage() {
if (!callback_.is_null()) {
- RecordSSLBlockingPageTimeStats(
- false, cert_error_,
- overridable_ && !strict_enforcement_, display_start_time_,
- base::TimeTicks::Now());
+ RecordSSLBlockingPageTimeStats(false,
+ cert_error_,
+ overridable_ && !strict_enforcement_,
+ internal_,
+ display_start_time_,
+ base::TimeTicks::Now());
// The page is closed without the user having chosen what to do, default to
// deny.
NotifyDenyCertificate();
@@ -321,19 +336,23 @@ void SSLBlockingPage::OverrideRendererPrefs(
}
void SSLBlockingPage::OnProceed() {
- RecordSSLBlockingPageTimeStats(true, cert_error_,
- overridable_ && !strict_enforcement_, display_start_time_,
- base::TimeTicks::Now());
-
+ RecordSSLBlockingPageTimeStats(true,
+ cert_error_,
+ overridable_ && !strict_enforcement_,
+ internal_,
+ display_start_time_,
+ base::TimeTicks::Now());
// Accepting the certificate resumes the loading of the page.
NotifyAllowCertificate();
}
void SSLBlockingPage::OnDontProceed() {
- RecordSSLBlockingPageTimeStats(false, cert_error_,
- overridable_ && !strict_enforcement_, display_start_time_,
- base::TimeTicks::Now());
-
+ RecordSSLBlockingPageTimeStats(false,
+ cert_error_,
+ overridable_ && !strict_enforcement_,
+ internal_,
+ display_start_time_,
+ base::TimeTicks::Now());
NotifyDenyCertificate();
}
« no previous file with comments | « chrome/browser/ssl/ssl_blocking_page.h ('k') | net/base/net_util.h » ('j') | net/base/net_util.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698