packages feed

tls-extra 0.2.2 → 0.2.3

raw patch · 2 files changed

+18/−3 lines, 2 filesdep +timedep ~certificatedep ~tlsPVP ok

version bump matches the API change (PVP)

Dependencies added: time

Dependency ranges changed: certificate, tls

API changes (from Hackage documentation)

+ Network.TLS.Extra: certificateFingerprint :: (ByteString -> ByteString) -> X509 -> ByteString
+ Network.TLS.Extra: certificateVerifyValidity :: Day -> [X509] -> Bool

Files

Network/TLS/Extra/Certificate.hs view
@@ -10,6 +10,8 @@ 	( certificateVerifyChain 	, certificateVerifyAgainst 	, certificateVerifyDomain+	, certificateVerifyValidity+	, certificateFingerprint 	) where  import qualified Data.ByteString as B@@ -26,6 +28,8 @@  import Data.Certificate.X509Cert (oidCommonName) +import Data.Time.Calendar+ #if defined(NOCERTVERIFY)  # warning "********certificate verify chain doesn't yet work on your platform *************"@@ -149,3 +153,13 @@ 		splitDot x  = 			let (y, z) = break (== '.') x in 			y : (if z == "" then [] else splitDot $ drop 1 z)++-- Maybe should verify whole chain+certificateVerifyValidity :: Day -> [X509] -> Bool+certificateVerifyValidity _ []                         = False+certificateVerifyValidity ctime (X509 cert _ _ _ _ :_) =+	let ((beforeDay,_,_) , (afterDay,_,_)) = certValidity cert in+	beforeDay < ctime && ctime <= afterDay++certificateFingerprint :: (L.ByteString -> B.ByteString) -> X509 -> B.ByteString+certificateFingerprint hash x509 = hash $ getSigningData x509
tls-extra.cabal view
@@ -1,5 +1,5 @@ Name:                tls-extra-Version:             0.2.2+Version:             0.2.3 Description:    a set of extra definitions, default values and helpers for tls. License:             BSD3@@ -28,7 +28,7 @@  Library   Build-Depends:     base > 3 && < 5-                   , tls >= 0.6.3 && < 0.7+                   , tls >= 0.6.4 && < 0.7                    , mtl                    , network >= 2.3                    , cryptohash >= 0.6@@ -36,8 +36,9 @@                    , vector                    , crypto-api >= 0.5                    , cryptocipher >= 0.2.5-                   , certificate >= 0.8.1 && < 0.9+                   , certificate >= 0.9 && < 1.0                    , text >= 0.5 && < 1.0+                   , time   Exposed-modules:   Network.TLS.Extra   other-modules:     Network.TLS.Extra.Certificate                      Network.TLS.Extra.Cipher