| Index: components/cronet/android/cronet_url_request_adapter.cc
|
| diff --git a/components/cronet/android/cronet_url_request_adapter.cc b/components/cronet/android/cronet_url_request_adapter.cc
|
| index ff8e70392dd73ea60b774286811db088709c41c8..087d07c00545b8cf094f6caddf5d40e64f53dd9e 100644
|
| --- a/components/cronet/android/cronet_url_request_adapter.cc
|
| +++ b/components/cronet/android/cronet_url_request_adapter.cc
|
| @@ -15,9 +15,11 @@
|
| #include "net/base/load_flags.h"
|
| #include "net/base/net_errors.h"
|
| #include "net/base/request_priority.h"
|
| +#include "net/cert/cert_status_flags.h"
|
| #include "net/http/http_response_headers.h"
|
| #include "net/http/http_status_code.h"
|
| #include "net/http/http_util.h"
|
| +#include "net/ssl/ssl_info.h"
|
| #include "net/url_request/redirect_info.h"
|
| #include "net/url_request/url_request_context.h"
|
|
|
| @@ -280,6 +282,19 @@ void CronetURLRequestAdapter::OnResponseStarted(net::URLRequest* request) {
|
| request->GetResponseCode());
|
| }
|
|
|
| +void CronetURLRequestAdapter::OnSSLCertificateError(
|
| + net::URLRequest* request,
|
| + const net::SSLInfo& ssl_info,
|
| + bool fatal) {
|
| + request->Cancel();
|
| + int ssl_cert_net_error = net::MapCertStatusToNetError(ssl_info.cert_status);
|
| + JNIEnv* env = base::android::AttachCurrentThread();
|
| + cronet::Java_CronetUrlRequest_onError(
|
| + env, owner_.obj(), ssl_cert_net_error,
|
| + ConvertUTF8ToJavaString(env, net::ErrorToString(ssl_cert_net_error))
|
| + .obj());
|
| +}
|
| +
|
| void CronetURLRequestAdapter::OnReadCompleted(net::URLRequest* request,
|
| int bytes_read) {
|
| DCHECK(context_->IsOnNetworkThread());
|
|
|