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

Unified Diff: chrome/browser/resources/security_warnings/safe_browsing.js

Issue 935663004: Add checkbox for reporting invalid TLS/SSL cert chains (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: comment tweaks Created 5 years, 10 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/resources/security_warnings/safe_browsing.js
diff --git a/chrome/browser/resources/security_warnings/safe_browsing.js b/chrome/browser/resources/security_warnings/safe_browsing.js
index 3673da5ceefcc616a57118fa3d285c562b05d3a0..bf7001eb30556ffc5a7258a8430dc7eb96e08f8c 100644
--- a/chrome/browser/resources/security_warnings/safe_browsing.js
+++ b/chrome/browser/resources/security_warnings/safe_browsing.js
@@ -12,24 +12,47 @@ var SB_CMD_SHOW_DIAGNOSTIC = 'showDiagnostic';
var SB_CMD_SHOW_PRIVACY = 'showPrivacy';
var SB_CMD_TAKE_ME_BACK = 'takeMeBack';
-// Other constants defined in safe_browsing_blocking_page.cc.
+// Must match SSLBlockingPageCommands in ssl_blocking_page.h.
+var SSL_CMD_DO_REPORT = 6;
+var SSL_CMD_DONT_REPORT = 7;
+
+// Other constants defined in security_interstitial_page.h.
var SB_BOX_CHECKED = 'boxchecked';
var SB_DISPLAY_CHECK_BOX = 'displaycheckbox';
-// This sets up the Extended Safe Browsing Reporting opt-in.
-function setupCheckbox() {
- if (loadTimeData.getString('type') != 'SAFEBROWSING' ||
+// This sets up the Extended Safe Browsing Reporting opt-in, either for
+// reporting malware or invalid certificate chains, depending on which
+// |type| is passed in. |type| can be 'SAFEBROWSING' or
+// 'SSL' (to set up the invalid cert collection checkbox).
+function setupCheckbox(type) {
+ if (type != 'SAFEBROWSING' && type != 'SSL') {
+ throw new Error('setupCheckbox called for invalid interstitial.');
+ }
+
+ var container = type == 'SAFEBROWSING' ?
+ 'malware-opt-in' : 'cert-collection-opt-in';
+
+ if (loadTimeData.getString('type') != type ||
!loadTimeData.getBoolean(SB_DISPLAY_CHECK_BOX)) {
return;
}
- $('opt-in-label').innerHTML = loadTimeData.getString('optInLink');
- $('opt-in-checkbox').checked = loadTimeData.getBoolean(SB_BOX_CHECKED);
- $('malware-opt-in').classList.remove('hidden');
+ $(container + '-label').innerHTML =
+ loadTimeData.getString('optInLink');
+ $(container + '-checkbox').checked =
+ loadTimeData.getBoolean(SB_BOX_CHECKED);
+
+ $(container).classList.remove('hidden');
$('body').classList.add('safe-browsing-has-checkbox');
- $('opt-in-checkbox').addEventListener('click', function() {
- sendCommand(
- $('opt-in-checkbox').checked ? SB_CMD_DO_REPORT : SB_CMD_DONT_REPORT);
+ $(container + '-checkbox').addEventListener('click', function() {
+ var command;
+ if ($(container + '-checkbox').checked) {
+ command = type == 'SAFEBROWSING' ? SB_CMD_DO_REPORT : SSL_CMD_DO_REPORT;
+ } else {
+ command = type == 'SAFEBROWSING' ?
+ SB_CMD_DONT_REPORT : SSL_CMD_DONT_REPORT;
+ }
+ sendCommand(command);
});
}

Powered by Google App Engine
This is Rietveld 408576698