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

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

Issue 2075523002: Add SourceUI field to permission report (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 4 years, 6 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
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/ui_manager.h" 5 #include "chrome/browser/safe_browsing/ui_manager.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/bind_helpers.h" 8 #include "base/bind_helpers.h"
9 #include "base/callback.h" 9 #include "base/callback.h"
10 #include "base/debug/leak_tracker.h" 10 #include "base/debug/leak_tracker.h"
(...skipping 266 matching lines...) Expand 10 before | Expand all | Expand 10 after
277 BrowserThread::IO, FROM_HERE, 277 BrowserThread::IO, FROM_HERE,
278 base::Bind( 278 base::Bind(
279 &SafeBrowsingUIManager::ReportInvalidCertificateChainOnIOThread, this, 279 &SafeBrowsingUIManager::ReportInvalidCertificateChainOnIOThread, this,
280 serialized_report), 280 serialized_report),
281 callback); 281 callback);
282 } 282 }
283 283
284 void SafeBrowsingUIManager::ReportPermissionAction( 284 void SafeBrowsingUIManager::ReportPermissionAction(
285 const GURL& origin, 285 const GURL& origin,
286 content::PermissionType permission, 286 content::PermissionType permission,
287 PermissionAction action) { 287 PermissionAction action,
288 SourceUI source_ui) {
288 DCHECK_CURRENTLY_ON(BrowserThread::UI); 289 DCHECK_CURRENTLY_ON(BrowserThread::UI);
289 BrowserThread::PostTask( 290 BrowserThread::PostTask(
290 BrowserThread::IO, FROM_HERE, 291 BrowserThread::IO, FROM_HERE,
291 base::Bind(&SafeBrowsingUIManager::ReportPermissionActionOnIOThread, this, 292 base::Bind(&SafeBrowsingUIManager::ReportPermissionActionOnIOThread, this,
292 origin, permission, action)); 293 origin, permission, action, source_ui));
293 } 294 }
294 295
295 void SafeBrowsingUIManager::AddObserver(Observer* observer) { 296 void SafeBrowsingUIManager::AddObserver(Observer* observer) {
296 DCHECK_CURRENTLY_ON(BrowserThread::UI); 297 DCHECK_CURRENTLY_ON(BrowserThread::UI);
297 observer_list_.AddObserver(observer); 298 observer_list_.AddObserver(observer);
298 } 299 }
299 300
300 void SafeBrowsingUIManager::RemoveObserver(Observer* observer) { 301 void SafeBrowsingUIManager::RemoveObserver(Observer* observer) {
301 DCHECK_CURRENTLY_ON(BrowserThread::UI); 302 DCHECK_CURRENTLY_ON(BrowserThread::UI);
302 observer_list_.RemoveObserver(observer); 303 observer_list_.RemoveObserver(observer);
303 } 304 }
304 305
305 void SafeBrowsingUIManager::ReportInvalidCertificateChainOnIOThread( 306 void SafeBrowsingUIManager::ReportInvalidCertificateChainOnIOThread(
306 const std::string& serialized_report) { 307 const std::string& serialized_report) {
307 DCHECK_CURRENTLY_ON(BrowserThread::IO); 308 DCHECK_CURRENTLY_ON(BrowserThread::IO);
308 309
309 // The service may delete the ping manager (i.e. when user disabling service, 310 // The service may delete the ping manager (i.e. when user disabling service,
310 // etc). This happens on the IO thread. 311 // etc). This happens on the IO thread.
311 if (!sb_service_ || !sb_service_->ping_manager()) 312 if (!sb_service_ || !sb_service_->ping_manager())
312 return; 313 return;
313 314
314 sb_service_->ping_manager()->ReportInvalidCertificateChain(serialized_report); 315 sb_service_->ping_manager()->ReportInvalidCertificateChain(serialized_report);
315 } 316 }
316 317
317 void SafeBrowsingUIManager::ReportPermissionActionOnIOThread( 318 void SafeBrowsingUIManager::ReportPermissionActionOnIOThread(
318 const GURL& origin, 319 const GURL& origin,
319 content::PermissionType permission, 320 content::PermissionType permission,
320 PermissionAction action) { 321 PermissionAction action,
322 SourceUI source_ui) {
321 DCHECK_CURRENTLY_ON(BrowserThread::IO); 323 DCHECK_CURRENTLY_ON(BrowserThread::IO);
322 324
323 // The service may delete the ping manager (i.e. when user disabling service, 325 // The service may delete the ping manager (i.e. when user disabling service,
324 // etc). This happens on the IO thread. 326 // etc). This happens on the IO thread.
325 if (!sb_service_ || !sb_service_->ping_manager()) 327 if (!sb_service_ || !sb_service_->ping_manager())
326 return; 328 return;
327 329
328 sb_service_->ping_manager()->ReportPermissionAction(origin, permission, 330 sb_service_->ping_manager()->ReportPermissionAction(origin, permission,
329 action); 331 action, source_ui);
330 } 332 }
331 333
332 // If the user had opted-in to send ThreatDetails, this gets called 334 // If the user had opted-in to send ThreatDetails, this gets called
333 // when the report is ready. 335 // when the report is ready.
334 void SafeBrowsingUIManager::SendSerializedThreatDetails( 336 void SafeBrowsingUIManager::SendSerializedThreatDetails(
335 const std::string& serialized) { 337 const std::string& serialized) {
336 DCHECK_CURRENTLY_ON(BrowserThread::IO); 338 DCHECK_CURRENTLY_ON(BrowserThread::IO);
337 339
338 // The service may delete the ping manager (i.e. when user disabling service, 340 // The service may delete the ping manager (i.e. when user disabling service,
339 // etc). This happens on the IO thread. 341 // etc). This happens on the IO thread.
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
391 } 393 }
392 394
393 WhitelistUrlSet* site_list = 395 WhitelistUrlSet* site_list =
394 static_cast<WhitelistUrlSet*>(web_contents->GetUserData(kWhitelistKey)); 396 static_cast<WhitelistUrlSet*>(web_contents->GetUserData(kWhitelistKey));
395 if (!site_list) 397 if (!site_list)
396 return false; 398 return false;
397 return site_list->Contains(maybe_whitelisted_url); 399 return site_list->Contains(maybe_whitelisted_url);
398 } 400 }
399 401
400 } // namespace safe_browsing 402 } // namespace safe_browsing
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698