diff --git a/Network/HTTP/Conduit/Downloader.hs b/Network/HTTP/Conduit/Downloader.hs
--- a/Network/HTTP/Conduit/Downloader.hs
+++ b/Network/HTTP/Conduit/Downloader.hs
@@ -81,6 +81,7 @@
 import Data.List
 import Foreign
 import qualified Network.Socket as NS
+import qualified Network.Socket.ByteString as NS
 import qualified OpenSSL as SSL
 import qualified OpenSSL.Session as SSL
 import qualified Network.HTTP.Types as N
@@ -173,7 +174,12 @@
 getOpenSSLProxyConnection =
     return $ \ connstr checkConn serverName _mbha host port -> do
         openSocketByName host port $ \ sock -> do
-            sc <- C.socketConnection sock 8192
+            sc <- C.makeConnection
+                (NS.recv sock 8129)
+                (NS.sendAll sock)
+                (return ())
+                -- No NS.close since C.makeConnection creates finalizer which
+                -- calls it prematurely since sc is never used after checkConn.
             C.connectionWrite sc connstr
             checkConn sc
             makeSSLConnection sock serverName
diff --git a/http-conduit-downloader.cabal b/http-conduit-downloader.cabal
--- a/http-conduit-downloader.cabal
+++ b/http-conduit-downloader.cabal
@@ -1,6 +1,6 @@
 cabal-version:  2.4
 name:           http-conduit-downloader
-version:        1.1.1
+version:        1.1.2
 author:         Vladimir Shabanov <dev@vshabanov.com>
 maintainer:     Vladimir Shabanov <dev@vshabanov.com>
 homepage:       https://github.com/bazqux/http-conduit-downloader
