diff --git a/Network/TLS/Client/Enumerator.hs b/Network/TLS/Client/Enumerator.hs
--- a/Network/TLS/Client/Enumerator.hs
+++ b/Network/TLS/Client/Enumerator.hs
@@ -80,7 +80,7 @@
             }
     gen <- makeSystem
     istate <- client tcp gen h
-    _ <- handshake istate
+    handshake istate
     return ConnInfo
         { connRead = recvD istate
         , connWrite = sendData istate . L.fromChunks
@@ -89,6 +89,6 @@
   where
     recvD istate = do
         x <- recvData istate
-        if L.null x
+        if S.null x
             then recvD istate
-            else return $ L.toChunks x
+            else return [x]
diff --git a/http-enumerator.cabal b/http-enumerator.cabal
--- a/http-enumerator.cabal
+++ b/http-enumerator.cabal
@@ -1,5 +1,5 @@
 name:            http-enumerator
-version:         0.7.2.5
+version:         0.7.3
 license:         BSD3
 license-file:    LICENSE
 author:          Michael Snoyman <michael@snoyman.com>
@@ -33,11 +33,11 @@
                  , http-types            >= 0.6     && < 0.7
                  , blaze-builder-enumerator >= 0.2  && < 0.3
                  , cprng-aes             >= 0.2     && < 0.3
-                 , tls                   >= 0.8.1   && < 0.9
-                 , tls-extra             >= 0.4     && < 0.5
+                 , tls                   >= 0.9     && < 0.10
+                 , tls-extra             >= 0.4.3   && < 0.5
                  , monad-control         >= 0.2     && < 0.4
                  , containers            >= 0.2
-                 , certificate           >= 0.7     && < 1.1
+                 , certificate           >= 1.1     && < 1.2
                  , case-insensitive      >= 0.2
                  , base64-bytestring     >= 0.1     && < 0.2
                  , asn1-data             >= 0.5.1   && < 0.7
