Utility methods for reading key & cert data.
[?]
Feb 2, 2017, 4:11 AM
MJ6R42RCK2ASXAJ6QXDPMAW56RBOJ4F4HI2LFIV3KXFIKWYMQK3QCDependencies
- [2]
HMDM3B55Implement core of payments/billing infrastructure. - [3]
NEDDHXUKReformat via stylish-haskell - [4]
2XQD6KKKAdd invitation logic and clean up DBProg error handling. - [5]
V2VDN77HEnable postgres configuration via environment variable for Heroku. - [6]
6L5BK5EHUse generic SMTP rather than Sendmail-specific mail client. - [7]
DFOBMSAOInitial work on payments API - [8]
LCBJULKEFix swapped default and key in QConfig. - [9]
Q5X5RYQLstylish-haskell reformatting - [*]
64C6AWH6Rename Ananke -> Quixotic, project reboot.
Change contents
- edit in aftok.cabal at line 164[3.1612]
, x509, x509-store - replacement in server/Aftok/QConfig.hs at line 9
import qualified Network.Bippy.Types as Bimport Data.X509import Data.X509.File (readSignedObject, readKeyFile)import qualified Network.Bippy.Types as BT - edit in server/Aftok/QConfig.hs at line 21
import qualified Aftok.Payments as AP - replacement in server/Aftok/QConfig.hs at line 30
, btcConfig :: BtcConfig, billingConfig :: BillingConfig - replacement in server/Aftok/QConfig.hs at line 41
data BtcConfig = BtcConfig{ btcNetwork :: B.Network }data BillingConfig = BillingConfig{ network :: BT.Network, signingKeyFile :: System.IO.FilePath, certsFile :: System.IO.FilePath} - replacement in server/Aftok/QConfig.hs at line 62
<*> readBtcConfig cfg<*> readBillingConfig cfg - replacement in server/Aftok/QConfig.hs at line 72
readBtcConfig :: CT.Config -> IO BtcConfigreadBtcConfig cfg =let parseNetwork :: String -> B.NetworkparseNetwork "main" = B.MainNetparseNetwork _ = B.TestNetin (BtcConfig . parseNetwork) <$> C.require cfg "network"readBillingConfig :: CT.Config -> IO BillingConfigreadBillingConfig cfg =BillingConfig <$> (parseNetwork <$> C.require cfg "network")<*> C.require cfg "signingKeyFile"<*> C.require cfg "certsFile"where parseNetwork :: String -> BT.NetworkparseNetwork "main" = BT.MainNetparseNetwork _ = BT.TestNet - replacement in server/Aftok/QConfig.hs at line 92[3.6294]
toBillingConfig :: BillingConfig -> IO AP.BillingConfigtoBillingConfig c = doprivKeys <- readKeyFile (signingKeyFile c)pkiEntries <- readSignedObject (certsFile c)privKey <- case headMay privKeys ofJust (PrivKeyRSA k) -> pure kJust (PrivKeyDSA _) -> fail "DSA keys not supported for payment request signing."Nothing -> fail $ "No keys found in private key file " <> signingKeyFile clet pkiData = BT.X509SHA256 . CertificateChain $ pkiEntriespure $ AP.BillingConfig (network c) privKey pkiData - replacement in server/Aftok/Snaplet/Payments.hs at line 19
widx <- snapEval $ fc (ReadWorkIndex pid)createPaymentRequests ptime memogen urigen plgen uid pid - replacement in server/Aftok/Snaplet/Payments.hs at line 23
undefined