From a00d15573935f292acbd79085b7da3eb87c3921d Mon Sep 17 00:00:00 2001 From: Philipp Balzarek Date: Fri, 6 Sep 2013 17:23:06 +0200 Subject: [PATCH] update to tls >= 1.1.3 --- pontarius-xmpp.cabal | 6 +++--- source/Network/Xmpp/Tls.hs | 36 +++++++++++++++++++----------------- 2 files changed, 22 insertions(+), 20 deletions(-) diff --git a/pontarius-xmpp.cabal b/pontarius-xmpp.cabal index 4d8ab3a..0baee85 100644 --- a/pontarius-xmpp.cabal +++ b/pontarius-xmpp.cabal @@ -47,7 +47,7 @@ Library , conduit >=1.0.1 , containers >=0.4.0.0 , crypto-api >=0.9 - , crypto-random-api >=0.2 + , crypto-random >=0.0.5 , cryptohash >=0.6.1 , cryptohash-cryptoapi >=0.1 , data-default >=0.2 @@ -64,8 +64,8 @@ Library , stm >=2.1.2.1 , stringprep >=0.1.3 , text >=0.11.1.5 - , tls >=1.1.0 - , tls-extra >=0.5.0 + , tls >=1.1.3 + , tls-extra >=0.6.0 , transformers >=0.2.2.0 , void >=0.5.5 , xml-types >=0.3.1 diff --git a/source/Network/Xmpp/Tls.hs b/source/Network/Xmpp/Tls.hs index e2a08e4..8e8e4b3 100644 --- a/source/Network/Xmpp/Tls.hs +++ b/source/Network/Xmpp/Tls.hs @@ -1,25 +1,27 @@ {-# OPTIONS_HADDOCK hide #-} {-# LANGUAGE DeriveDataTypeable #-} {-# LANGUAGE OverloadedStrings #-} +{-# LANGUAGE PackageImports #-} module Network.Xmpp.Tls where -import qualified Control.Exception.Lifted as Ex -import Control.Monad -import Control.Monad.Error -import Control.Monad.State.Strict -import Crypto.Random.API -import qualified Data.ByteString as BS -import qualified Data.ByteString.Char8 as BSC8 -import qualified Data.ByteString.Lazy as BL -import Data.Conduit -import Data.IORef -import Data.XML.Types -import Network.DNS.Resolver (ResolvConf) -import Network.TLS -import Network.Xmpp.Stream -import Network.Xmpp.Types -import System.Log.Logger (debugM, errorM, infoM) +import Control.Applicative ((<$>)) +import qualified Control.Exception.Lifted as Ex +import Control.Monad +import Control.Monad.Error +import Control.Monad.State.Strict +import "crypto-random" Crypto.Random +import qualified Data.ByteString as BS +import qualified Data.ByteString.Char8 as BSC8 +import qualified Data.ByteString.Lazy as BL +import Data.Conduit +import Data.IORef +import Data.XML.Types +import Network.DNS.Resolver (ResolvConf) +import Network.TLS +import Network.Xmpp.Stream +import Network.Xmpp.Types +import System.Log.Logger (debugM, errorM, infoM) mkBackend :: StreamHandle -> Backend mkBackend con = Backend { backendSend = \bs -> void (streamSend con bs) @@ -121,7 +123,7 @@ tlsinit :: (MonadIO m, MonadIO m1) => ) tlsinit params backend = do liftIO $ debugM "Pontarius.Xmpp.Tls" "TLS with debug mode enabled." - gen <- liftIO $ getSystemRandomGen -- TODO: Find better random source? + gen <- liftIO (cprgCreate <$> createEntropyPool :: IO SystemRNG) con <- client params gen backend handshake con let src = forever $ do