diff --git a/Data/Conduit/Network/TLS.hs b/Data/Conduit/Network/TLS.hs
--- a/Data/Conduit/Network/TLS.hs
+++ b/Data/Conduit/Network/TLS.hs
@@ -46,7 +46,7 @@
 import Data.Conduit (yield, awaitForever, Producer, Consumer)
 import qualified Data.Conduit.List as CL
 import Network.Socket (SockAddr (SockAddrInet), sClose)
-import Network.Socket.ByteString (recv, sendAll)
+import Network.Socket.ByteString (sendAll)
 import Control.Exception (bracket)
 import Control.Monad.Trans.Class (lift)
 import Control.Monad.IO.Class (liftIO, MonadIO)
@@ -276,7 +276,7 @@
         | rest < 0 = error "Data.Conduit.Network.TLS.recvExact: rest < 0"
         | rest == 0 = return $ S.concat $ front []
         | otherwise = do
-            next <- recv socket rest
+            next <- safeRecv socket rest
             if S.length next == 0
                 then return $ S.concat $ front []
                 else loop (front . (next:)) $ rest - S.length next
diff --git a/network-conduit-tls.cabal b/network-conduit-tls.cabal
--- a/network-conduit-tls.cabal
+++ b/network-conduit-tls.cabal
@@ -1,5 +1,5 @@
 name:                network-conduit-tls
-version:             1.2.1
+version:             1.2.1.1
 synopsis:            Create TLS-aware network code with conduits
 description:         Uses the tls package for a pure-Haskell implementation.
 homepage:            https://github.com/snoyberg/conduit
