packages feed

tls 0.8.4 → 0.8.5

raw patch · 2 files changed

+6/−4 lines, 2 files

Files

Network/TLS/Core.hs view
@@ -46,7 +46,7 @@ import Crypto.Random import Control.Applicative ((<$>)) import Control.Monad.State-import Control.Exception (throwIO, Exception(), fromException, catch)+import Control.Exception (throwIO, Exception(), fromException, catch, SomeException) import System.IO (Handle) import System.IO.Error (mkIOError, eofErrorType) import Prelude hiding (catch)@@ -273,12 +273,14 @@  		processCertificate :: MonadIO m => Handshake -> m (RecvState m) 		processCertificate (Certificates certs) = do-			let cb = onCertificatesRecv $ params-			usage <- liftIO $ cb certs+			usage <- liftIO $ catch (onCertificatesRecv params $ certs) rejectOnException 			case usage of 				CertificateUsageAccept        -> return () 				CertificateUsageReject reason -> certificateRejected reason 			return $ RecvStateHandshake processServerKeyExchange+			where+				rejectOnException :: SomeException -> IO TLSCertificateUsage+				rejectOnException e = return $ CertificateUsageReject $ CertificateRejectOther $ show e 		processCertificate p = processServerKeyExchange p  		processServerKeyExchange :: MonadIO m => Handshake -> m (RecvState m)
tls.cabal view
@@ -1,5 +1,5 @@ Name:                tls-Version:             0.8.4+Version:             0.8.5 Description:    Native Haskell TLS and SSL protocol implementation for server and client.    .