  net/base/net_error_list.h                     |   5 +
  net/cert/cert_verify_proc.cc                  |  23 ++++
  net/http/http_network_transaction.cc          |   9 ++
- net/socket/ssl_client_socket_impl.cc          | 100 ++++++++++++++++++
+ net/socket/ssl_client_socket_impl.cc          | 101 ++++++++++++++++++
  net/spdy/spdy_session.cc                      |  12 +++
  net/ssl/client_cert_store_mac.cc              |  75 +++++++++++++
  net/ssl/client_cert_store_nss.cc              |  31 ++++++

 int SSLClientSocketImpl::Connect(CompletionOnceCallback callback) {
   // Although StreamSocket does allow calling Connect() after Disconnect(),
   // this has never worked for layered sockets. CHECK to detect any consumers
@@ -489,6 +497,10 @@ int SSLClientSocketImpl::Connect(CompletionOnceCallback callback) {
     return rv;
   }
 
+#ifndef NO_GOSTSSL
+  gostssl_cachestring( ssl_.get(), GetSessionCacheKey(base::nullopt).data() );
+#endif // GOSTSSL
+
   // Set SSL to client mode. Handshake happens in the loop below.
   SSL_set_connect_state(ssl_.get());
 
@@ -1173,6 +1185,82 @@ ssl_verify_result_t SSLClientSocketImpl::VerifyCert() {
 
   start_cert_verification_time_ = base::TimeTicks::Now();
 

From bb0a2f726c53ca2ccfbdad2aa9059fda34820c28 Mon Sep 17 00:00:00 2001
From: Dmitrii Pichulin <deem@deem.ru>
Date: Fri, 25 Oct 2019 17:44:37 +0300
Subject: [PATCH] chromium GOSTSSL
