Index: content/child/web_url_loader_impl.cc |
diff --git a/content/child/web_url_loader_impl.cc b/content/child/web_url_loader_impl.cc |
index 6a68b7f1de2800e9bae15fa8bf3cac93938f41a6..ae26c4ea9cd5801b592bb94b788136b8d39f6635 100644 |
--- a/content/child/web_url_loader_impl.cc |
+++ b/content/child/web_url_loader_impl.cc |
@@ -4,6 +4,7 @@ |
#include "content/child/web_url_loader_impl.h" |
+#include <openssl/ssl.h> |
#include <stdint.h> |
#include <algorithm> |
@@ -256,6 +257,16 @@ void SetSecurityStyleAndDetails(const GURL& url, |
mac = ""; |
} |
+ const char* key_exchange_group = ""; |
+ if (ssl_status.key_exchange_group != 0) { |
+ // Historically the field was named 'curve' rather than 'group'. |
+ key_exchange_group = SSL_get_curve_name(ssl_status.key_exchange_group); |
+ if (!key_exchange_group) { |
+ NOTREACHED(); |
+ key_exchange_group = ""; |
+ } |
+ } |
+ |
blink::WebURLResponse::SecurityStyle securityStyle = |
WebURLResponse::SecurityStyleUnknown; |
switch (ssl_status.security_style) { |
@@ -286,8 +297,8 @@ void SetSecurityStyleAndDetails(const GURL& url, |
blink::WebURLResponse::WebSecurityDetails webSecurityDetails( |
WebString::fromUTF8(protocol), WebString::fromUTF8(key_exchange), |
- WebString::fromUTF8(cipher), WebString::fromUTF8(mac), ssl_status.cert_id, |
- sct_list); |
+ WebString::fromUTF8(key_exchange_group), WebString::fromUTF8(cipher), |
+ WebString::fromUTF8(mac), ssl_status.cert_id, sct_list); |
response->setSecurityDetails(webSecurityDetails); |
} |