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

Side by Side Diff: chrome/browser/ssl/ssl_manager.h

Issue 62032: Stop serializing WebString over IPC. The new rule is that only POD (plain ol... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 11 years, 8 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 | Annotate | Revision Log
« no previous file with comments | « chrome/browser/renderer_host/render_view_host.cc ('k') | chrome/browser/ssl/ssl_manager.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2006-2008 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 #ifndef CHROME_BROWSER_SSL_SSL_MANAGER_H_ 5 #ifndef CHROME_BROWSER_SSL_SSL_MANAGER_H_
6 #define CHROME_BROWSER_SSL_SSL_MANAGER_H_ 6 #define CHROME_BROWSER_SSL_SSL_MANAGER_H_
7 7
8 #include <string> 8 #include <string>
9 #include <map> 9 #include <map>
10 #include <vector> 10 #include <vector>
11 11
12 #include "base/basictypes.h" 12 #include "base/basictypes.h"
13 #include "base/observer_list.h" 13 #include "base/observer_list.h"
14 #include "base/ref_counted.h" 14 #include "base/ref_counted.h"
15 #include "chrome/browser/renderer_host/resource_dispatcher_host.h" 15 #include "chrome/browser/renderer_host/resource_dispatcher_host.h"
16 #include "chrome/browser/tab_contents/provisional_load_details.h" 16 #include "chrome/browser/tab_contents/provisional_load_details.h"
17 #include "chrome/browser/tab_contents/security_style.h" 17 #include "chrome/browser/tab_contents/security_style.h"
18 #include "chrome/common/notification_observer.h" 18 #include "chrome/common/notification_observer.h"
19 #include "chrome/common/notification_registrar.h" 19 #include "chrome/common/notification_registrar.h"
20 #include "googleurl/src/gurl.h" 20 #include "googleurl/src/gurl.h"
21 #include "net/base/net_errors.h" 21 #include "net/base/net_errors.h"
22 #include "net/base/ssl_info.h" 22 #include "net/base/ssl_info.h"
23 #include "net/base/x509_certificate.h" 23 #include "net/base/x509_certificate.h"
24 #include "third_party/WebKit/WebKit/chromium/public/WebConsoleMessage.h"
24 #include "webkit/glue/resource_type.h" 25 #include "webkit/glue/resource_type.h"
25 26
26 class AutomationProvider; 27 class AutomationProvider;
27 class NavigationEntry; 28 class NavigationEntry;
28 class LoadFromMemoryCacheDetails; 29 class LoadFromMemoryCacheDetails;
29 class LoadNotificationDetails; 30 class LoadNotificationDetails;
30 class NavigationController; 31 class NavigationController;
31 class PrefService; 32 class PrefService;
32 class ResourceRedirectDetails; 33 class ResourceRedirectDetails;
33 class ResourceRequestDetails; 34 class ResourceRequestDetails;
34 class SSLErrorInfo; 35 class SSLErrorInfo;
35 class SSLHostState; 36 class SSLHostState;
36 class Task; 37 class Task;
37 class URLRequest; 38 class URLRequest;
38 class WebContents; 39 class WebContents;
39 40
40 namespace WebKit {
41 struct WebConsoleMessage;
42 }
43
44 // The SSLManager SSLManager controls the SSL UI elements in a TabContents. It 41 // The SSLManager SSLManager controls the SSL UI elements in a TabContents. It
45 // listens for various events that influence when these elements should or 42 // listens for various events that influence when these elements should or
46 // should not be displayed and adjusts them accordingly. 43 // should not be displayed and adjusts them accordingly.
47 // 44 //
48 // There is one SSLManager per tab. 45 // There is one SSLManager per tab.
49 // The security state (secure/insecure) is stored in the navigation entry. 46 // The security state (secure/insecure) is stored in the navigation entry.
50 // Along with it are stored any SSL error code and the associated cert. 47 // Along with it are stored any SSL error code and the associated cert.
51 48
52 class SSLManager : public NotificationObserver { 49 class SSLManager : public NotificationObserver {
53 public: 50 public:
(...skipping 315 matching lines...) Expand 10 before | Expand all | Expand 10 after
369 // Sets the maximum security style for the page. If the current security 366 // Sets the maximum security style for the page. If the current security
370 // style is lower than |style|, this will not have an effect on the security 367 // style is lower than |style|, this will not have an effect on the security
371 // indicators. 368 // indicators.
372 // 369 //
373 // It will return true if the navigation entry was updated or false if 370 // It will return true if the navigation entry was updated or false if
374 // nothing changed. The caller is responsible for broadcasting 371 // nothing changed. The caller is responsible for broadcasting
375 // NOTIFY_SSY_STATE_CHANGED if it returns true. 372 // NOTIFY_SSY_STATE_CHANGED if it returns true.
376 bool SetMaxSecurityStyle(SecurityStyle style); 373 bool SetMaxSecurityStyle(SecurityStyle style);
377 374
378 // Logs a message to the console of the page. 375 // Logs a message to the console of the page.
379 void AddMessageToConsole(const WebKit::WebConsoleMessage&); 376 void AddMessageToConsole(const string16& message,
377 const WebKit::WebConsoleMessage::Level&);
380 378
381 // Records that |cert| is permitted to be used for |host| in the future. 379 // Records that |cert| is permitted to be used for |host| in the future.
382 void DenyCertForHost(net::X509Certificate* cert, const std::string& host); 380 void DenyCertForHost(net::X509Certificate* cert, const std::string& host);
383 381
384 // Records that |cert| is not permitted to be used for |host| in the future. 382 // Records that |cert| is not permitted to be used for |host| in the future.
385 void AllowCertForHost(net::X509Certificate* cert, const std::string& host); 383 void AllowCertForHost(net::X509Certificate* cert, const std::string& host);
386 384
387 // Queries whether |cert| is allowed or denied for |host|. 385 // Queries whether |cert| is allowed or denied for |host|.
388 net::X509Certificate::Policy::Judgment QueryPolicy( 386 net::X509Certificate::Policy::Judgment QueryPolicy(
389 net::X509Certificate* cert, const std::string& host); 387 net::X509Certificate* cert, const std::string& host);
(...skipping 146 matching lines...) Expand 10 before | Expand all | Expand 10 after
536 SSLHostState* ssl_host_state_; 534 SSLHostState* ssl_host_state_;
537 535
538 // The list of messages that should be displayed (in info bars) when the page 536 // The list of messages that should be displayed (in info bars) when the page
539 // currently loading had loaded. 537 // currently loading had loaded.
540 std::vector<SSLMessageInfo> pending_messages_; 538 std::vector<SSLMessageInfo> pending_messages_;
541 539
542 DISALLOW_COPY_AND_ASSIGN(SSLManager); 540 DISALLOW_COPY_AND_ASSIGN(SSLManager);
543 }; 541 };
544 542
545 #endif // CHROME_BROWSER_SSL_SSL_MANAGER_H_ 543 #endif // CHROME_BROWSER_SSL_SSL_MANAGER_H_
OLDNEW
« no previous file with comments | « chrome/browser/renderer_host/render_view_host.cc ('k') | chrome/browser/ssl/ssl_manager.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698