Index: content/browser/devtools/protocol/security_handler.cc |
diff --git a/content/browser/devtools/protocol/security_handler.cc b/content/browser/devtools/protocol/security_handler.cc |
index 2074fa6e6ee7d6c322a7d319e2dc1f99f8fcbe64..f21ff9f9453a470f342bc6bfe42b94dcf40433ea 100644 |
--- a/content/browser/devtools/protocol/security_handler.cc |
+++ b/content/browser/devtools/protocol/security_handler.cc |
@@ -6,7 +6,7 @@ |
#include <string> |
-#include "content/browser/frame_host/render_frame_host_impl.h" |
+#include "content/browser/devtools/protocol/devtools_protocol_dispatcher.h" |
#include "content/public/browser/navigation_controller.h" |
#include "content/public/browser/navigation_entry.h" |
#include "content/public/browser/security_style_explanations.h" |
@@ -15,9 +15,10 @@ |
#include "content/public/browser/web_contents_delegate.h" |
namespace content { |
-namespace protocol { |
+namespace devtools { |
+namespace security { |
-using Explanations = protocol::Array<Security::SecurityStateExplanation>; |
+typedef DevToolsProtocolClient::Response Response; |
namespace { |
@@ -25,32 +26,33 @@ |
blink::WebSecurityStyle security_style) { |
switch (security_style) { |
case blink::WebSecurityStyleUnknown: |
- return Security::SecurityStateEnum::Unknown; |
+ return kSecurityStateUnknown; |
case blink::WebSecurityStyleUnauthenticated: |
- return Security::SecurityStateEnum::Neutral; |
+ return kSecurityStateNeutral; |
case blink::WebSecurityStyleAuthenticationBroken: |
- return Security::SecurityStateEnum::Insecure; |
+ return kSecurityStateInsecure; |
case blink::WebSecurityStyleWarning: |
- return Security::SecurityStateEnum::Warning; |
+ return kSecurityStateWarning; |
case blink::WebSecurityStyleAuthenticated: |
- return Security::SecurityStateEnum::Secure; |
+ return kSecurityStateSecure; |
default: |
NOTREACHED(); |
- return Security::SecurityStateEnum::Unknown; |
+ return kSecurityStateUnknown; |
} |
} |
void AddExplanations( |
const std::string& security_style, |
const std::vector<SecurityStyleExplanation>& explanations_to_add, |
- Explanations* explanations) { |
+ std::vector<scoped_refptr<SecurityStateExplanation>>* explanations) { |
for (const auto& it : explanations_to_add) { |
- explanations->addItem(Security::SecurityStateExplanation::Create() |
- .SetSecurityState(security_style) |
- .SetSummary(it.summary) |
- .SetDescription(it.description) |
- .SetHasCertificate(it.has_certificate) |
- .Build()); |
+ scoped_refptr<SecurityStateExplanation> explanation = |
+ SecurityStateExplanation::Create() |
+ ->set_security_state(security_style) |
+ ->set_summary(it.summary) |
+ ->set_description(it.description) |
+ ->set_has_certificate(it.has_certificate); |
+ explanations->push_back(explanation); |
} |
} |
@@ -64,9 +66,8 @@ |
SecurityHandler::~SecurityHandler() { |
} |
-void SecurityHandler::Wire(UberDispatcher* dispatcher) { |
- frontend_.reset(new Security::Frontend(dispatcher->channel())); |
- Security::Dispatcher::wire(dispatcher, this); |
+void SecurityHandler::SetClient(std::unique_ptr<Client> client) { |
+ client_.swap(client); |
} |
void SecurityHandler::AttachToRenderFrameHost() { |
@@ -79,7 +80,7 @@ |
DidChangeVisibleSecurityState(); |
} |
-void SecurityHandler::SetRenderFrameHost(RenderFrameHostImpl* host) { |
+void SecurityHandler::SetRenderFrameHost(RenderFrameHost* host) { |
host_ = host; |
if (enabled_ && host_) |
AttachToRenderFrameHost(); |
@@ -96,42 +97,42 @@ |
const std::string security_state = |
SecurityStyleToProtocolSecurityState(security_style); |
- std::unique_ptr<Explanations> explanations = Explanations::create(); |
- AddExplanations(Security::SecurityStateEnum::Insecure, |
+ std::vector<scoped_refptr<SecurityStateExplanation>> explanations; |
+ AddExplanations(kSecurityStateInsecure, |
security_style_explanations.broken_explanations, |
- explanations.get()); |
- AddExplanations(Security::SecurityStateEnum::Neutral, |
+ &explanations); |
+ AddExplanations(kSecurityStateNeutral, |
security_style_explanations.unauthenticated_explanations, |
- explanations.get()); |
- AddExplanations(Security::SecurityStateEnum::Secure, |
+ &explanations); |
+ AddExplanations(kSecurityStateSecure, |
security_style_explanations.secure_explanations, |
- explanations.get()); |
- AddExplanations(Security::SecurityStateEnum::Info, |
- security_style_explanations.info_explanations, |
- explanations.get()); |
+ &explanations); |
+ AddExplanations(kSecurityStateInfo, |
+ security_style_explanations.info_explanations, &explanations); |
- std::unique_ptr<Security::InsecureContentStatus> insecure_content_status = |
- Security::InsecureContentStatus::Create() |
- .SetRanMixedContent(security_style_explanations.ran_mixed_content) |
- .SetDisplayedMixedContent( |
+ scoped_refptr<InsecureContentStatus> insecure_content_status = |
+ InsecureContentStatus::Create() |
+ ->set_ran_mixed_content(security_style_explanations.ran_mixed_content) |
+ ->set_displayed_mixed_content( |
security_style_explanations.displayed_mixed_content) |
- .SetRanContentWithCertErrors( |
+ ->set_ran_content_with_cert_errors( |
security_style_explanations.ran_content_with_cert_errors) |
- .SetDisplayedContentWithCertErrors( |
+ ->set_displayed_content_with_cert_errors( |
security_style_explanations.displayed_content_with_cert_errors) |
- .SetRanInsecureContentStyle(SecurityStyleToProtocolSecurityState( |
+ ->set_ran_insecure_content_style(SecurityStyleToProtocolSecurityState( |
security_style_explanations.ran_insecure_content_style)) |
- .SetDisplayedInsecureContentStyle( |
+ ->set_displayed_insecure_content_style( |
SecurityStyleToProtocolSecurityState( |
security_style_explanations |
- .displayed_insecure_content_style)) |
- .Build(); |
+ .displayed_insecure_content_style)); |
- frontend_->SecurityStateChanged( |
- security_state, |
- std::move(explanations), |
- std::move(insecure_content_status), |
- security_style_explanations.scheme_is_cryptographic); |
+ client_->SecurityStateChanged( |
+ SecurityStateChangedParams::Create() |
+ ->set_security_state(security_state) |
+ ->set_scheme_is_cryptographic( |
+ security_style_explanations.scheme_is_cryptographic) |
+ ->set_insecure_content_status(insecure_content_status) |
+ ->set_explanations(explanations)); |
} |
Response SecurityHandler::Enable() { |
@@ -150,16 +151,17 @@ |
Response SecurityHandler::ShowCertificateViewer() { |
if (!host_) |
- return Response::InternalError(); |
+ return Response::InternalError("Could not connect to view"); |
WebContents* web_contents = WebContents::FromRenderFrameHost(host_); |
scoped_refptr<net::X509Certificate> certificate = |
web_contents->GetController().GetVisibleEntry()->GetSSL().certificate; |
if (!certificate) |
- return Response::Error("Could not find certificate"); |
+ return Response::InternalError("Could not find certificate"); |
web_contents->GetDelegate()->ShowCertificateViewerInDevTools( |
web_contents, certificate); |
return Response::OK(); |
} |
-} // namespace protocol |
+} // namespace security |
+} // namespace devtools |
} // namespace content |