summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAndrew Cady <d@jerkface.net>2016-01-24 00:10:58 -0500
committerAndrew Cady <d@jerkface.net>2016-01-24 00:13:57 -0500
commit05817369d9388d2175e942af79888ec01aa4b74a (patch)
treeceee298e6cc5944ef7fff385f5671bbbc87ee9fd /src
parent8e1377b22088c1c871915722e83746829419a0e6 (diff)
Remove unused imports, extensions, & definitions
Diffstat (limited to 'src')
-rw-r--r--src/Network/ACME.hs25
1 files changed, 3 insertions, 22 deletions
diff --git a/src/Network/ACME.hs b/src/Network/ACME.hs
index 2481163..ccd0a8c 100644
--- a/src/Network/ACME.hs
+++ b/src/Network/ACME.hs
@@ -1,5 +1,3 @@
1{-# LANGUAGE FlexibleContexts #-}
2{-# LANGUAGE MultiParamTypeClasses #-}
3{-# LANGUAGE OverloadedStrings #-} 1{-# LANGUAGE OverloadedStrings #-}
4{-# LANGUAGE RecordWildCards #-} 2{-# LANGUAGE RecordWildCards #-}
5{-# LANGUAGE ScopedTypeVariables #-} 3{-# LANGUAGE ScopedTypeVariables #-}
@@ -17,47 +15,30 @@ module Network.ACME (
17 signPayload, 15 signPayload,
18 ) where 16 ) where
19 17
20import Control.Lens hiding ((.=))
21import Control.Monad
22import Control.Monad.RWS.Strict
23import Crypto.Number.Serialize (i2osp) 18import Crypto.Number.Serialize (i2osp)
24import Data.Aeson (ToJSON (..), Value, encode, object, 19import Data.Aeson (ToJSON (..), encode, object, (.=))
25 (.=))
26import Data.Aeson.Lens hiding (key)
27import qualified Data.Aeson.Lens as JSON
28import Data.ByteString (ByteString) 20import Data.ByteString (ByteString)
29import qualified Data.ByteString as B 21import qualified Data.ByteString as B
30import qualified Data.ByteString.Base64.URL as Base64 22import qualified Data.ByteString.Base64.URL as Base64
31import qualified Data.ByteString.Char8 as BC 23import qualified Data.ByteString.Char8 as BC
32import qualified Data.ByteString.Lazy as LB 24import qualified Data.ByteString.Lazy as LB
33import qualified Data.ByteString.Lazy.Char8 as LC 25import qualified Data.ByteString.Lazy.Char8 as LC
34import Data.Coerce
35import Data.Digest.Pure.SHA (bytestringDigest, sha256) 26import Data.Digest.Pure.SHA (bytestringDigest, sha256)
36import Data.Maybe 27import Data.Maybe
37import Data.String (fromString) 28import Data.Text.Encoding (decodeUtf8)
38import qualified Data.Text as T
39import Data.Text.Encoding (decodeUtf8, encodeUtf8)
40import Data.Time.Clock.POSIX (getPOSIXTime)
41import Network.Wreq (Response, checkStatus, defaults,
42 responseBody, responseHeader,
43 responseStatus, statusCode,
44 statusMessage)
45import qualified Network.Wreq as W
46import qualified Network.Wreq.Session as WS
47import OpenSSL 29import OpenSSL
48import OpenSSL.EVP.Digest 30import OpenSSL.EVP.Digest
49import OpenSSL.EVP.PKey 31import OpenSSL.EVP.PKey
50import OpenSSL.EVP.Sign 32import OpenSSL.EVP.Sign
51import OpenSSL.PEM 33import OpenSSL.PEM
52import OpenSSL.RSA 34import OpenSSL.RSA
53import OpenSSL.X509.Request
54 35
55data Keys = Keys RSAKeyPair RSAPubKey 36data Keys = Keys RSAKeyPair RSAPubKey
56readKeys :: String -> IO (Maybe Keys) 37readKeys :: String -> IO (Maybe Keys)
57readKeys privKeyData = do 38readKeys privKeyData = do
58 keypair :: SomeKeyPair <- readPrivateKey privKeyData PwTTY 39 keypair :: SomeKeyPair <- readPrivateKey privKeyData PwTTY
59 let (priv :: Maybe RSAKeyPair) = toKeyPair keypair 40 let (priv :: Maybe RSAKeyPair) = toKeyPair keypair
60 pub :: Maybe RSAPubKey <- maybe (return Nothing) (fmap Just . rsaCopyPublic) priv 41 pub <- maybe (return Nothing) (fmap Just . rsaCopyPublic) priv
61 return $ Keys <$> priv <*> pub 42 return $ Keys <$> priv <*> pub
62 43
63-------------------------------------------------------------------------------- 44--------------------------------------------------------------------------------