packages feed

tls 1.2.1 → 1.2.2

raw patch · 3 files changed

+20/−3 lines, 3 filesdep ~x509-store

Dependency ranges changed: x509-store

Files

Network/TLS.hs view
@@ -62,6 +62,7 @@     , Credentials(..)     , Credential     , credentialLoadX509+    , credentialLoadX509FromMemory      -- * Initialisation and Termination of context     , bye
Network/TLS/Credentials.hs view
@@ -9,6 +9,7 @@     ( Credential     , Credentials(..)     , credentialLoadX509+    , credentialLoadX509FromMemory     , credentialsFindForSigning     , credentialsFindForDecrypting     , credentialsListSigningAlgorithms@@ -20,6 +21,7 @@ import Network.TLS.Struct import Network.TLS.X509 import Data.X509.File+import Data.X509.Memory import Data.X509  type Credential = (CertificateChain, PrivKey)@@ -31,7 +33,8 @@     mappend (Credentials l1) (Credentials l2) = Credentials (l1 ++ l2)  -- | try to create a new credential object from a public certificate--- and the associated private key.+-- and the associated private key that are stored on the filesystem+-- in PEM format. credentialLoadX509 :: FilePath -- ^ public certificate (X.509 format)                    -> FilePath -- ^ private key associated                    -> IO (Either String Credential)@@ -41,6 +44,19 @@     case keys of         []    -> return $ Left "no keys found"         (k:_) -> return $ Right (CertificateChain x509, k)++-- | similar to 'credentialLoadX509' but take the certificate+-- and private key from memory instead of from the filesystem.+credentialLoadX509FromMemory :: Bytes+                  -> Bytes+                  -> Either String Credential+credentialLoadX509FromMemory certData privateData = do+    let x509 = readSignedObjectFromMemory certData+        keys = readKeyFileFromMemory privateData+     in case keys of+            []    -> Left "no keys found"+            (k:_) -> Right (CertificateChain x509, k)+  where  credentialsListSigningAlgorithms :: Credentials -> [SignatureAlgorithm] credentialsListSigningAlgorithms (Credentials l) = catMaybes $ map credentialCanSign l
tls.cabal view
@@ -1,5 +1,5 @@ Name:                tls-Version:             1.2.1+Version:             1.2.2 Description:    Native Haskell TLS and SSL protocol implementation for server and client.    .@@ -49,7 +49,7 @@                    , asn1-types >= 0.2.0                    , asn1-encoding                    , x509 >= 1.4.3 && < 1.5.0-                   , x509-store+                   , x509-store >= 1.4.4                    , x509-validation >= 1.5.0 && < 1.6.0   Exposed-modules:   Network.TLS                      Network.TLS.Cipher