summaryrefslogtreecommitdiffhomepage
path: root/HTTP
diff options
context:
space:
mode:
Diffstat (limited to 'HTTP')
-rw-r--r--HTTP/Client.hs1
-rw-r--r--HTTP/ProofOfWork.hs22
-rw-r--r--HTTP/Server.hs1
3 files changed, 24 insertions, 0 deletions
diff --git a/HTTP/Client.hs b/HTTP/Client.hs
index 0a79ba0..0c28005 100644
--- a/HTTP/Client.hs
+++ b/HTTP/Client.hs
@@ -6,6 +6,7 @@
module HTTP.Client where
import HTTP
+import HTTP.ProofOfWork
import Types
import Types.Storage
import Servant.API
diff --git a/HTTP/ProofOfWork.hs b/HTTP/ProofOfWork.hs
new file mode 100644
index 0000000..45cc96d
--- /dev/null
+++ b/HTTP/ProofOfWork.hs
@@ -0,0 +1,22 @@
+{- Copyright 2016 Joey Hess <id@joeyh.name>
+ -
+ - Licensed under the GNU AGPL version 3 or higher.
+ -}
+
+{-# LANGUAGE DeriveGeneric #-}
+
+module HTTP.ProofOfWork where
+
+import Types
+import qualified Data.Text as T
+import GHC.Generics
+
+data ProofOfWorkRequirement t
+ = Result t
+ | ProofOfWorkRequirement
+ { leadingZeros :: Int
+ , argon2Iterations :: Int
+ }
+ deriving (Generic)
+
+newtype ProofOfWork = ProofOfWork T.Text
diff --git a/HTTP/Server.hs b/HTTP/Server.hs
index 5d5c87f..ab27aaa 100644
--- a/HTTP/Server.hs
+++ b/HTTP/Server.hs
@@ -8,6 +8,7 @@
module HTTP.Server (runServer) where
import HTTP
+import HTTP.ProofOfWork
import Types
import Types.Storage
import Tunables