@@ -49,6 +49,7 @@ import qualified Data.Conduit.Binary as CB
4949#if MIN_VERSION_tls(1, 1, 3)
5050import qualified Crypto.Random.AESCtr
5151#endif
52+import Network.Wai.Handler.Warp.Buffer
5253
5354data TLSSettings = TLSSettings
5455 { certFile :: FilePath
@@ -149,6 +150,8 @@ runTLSSocket TLSSettings {..} set sock app = do
149150 params
150151 gen
151152 TLS.handshake ctx
153+ buf <- allocateBuffer bufferSize
154+ blazeBuf <- toBlazeBuffer buf bufferSize
152155 let conn = Connection
153156 { connSendMany = TLS.sendData ctx . L.fromChunks
154157 , connSendAll = TLS.sendData ctx . L.fromChunks . return
@@ -160,6 +163,7 @@ runTLSSocket TLSSettings {..} set sock app = do
160163 TLS.contextClose ctx
161164 , connRecv = TLS.recvData ctx
162165 , connSendFileOverride = NotOverride
166+ , connBuffer = blazeBuf
163167 }
164168 return conn
165169 else