]> git.immae.eu Git - github/fretlink/hmacaroons.git/blobdiff - src/Crypto/Macaroon/Verifier.hs
ghc<7.10.1 compat
[github/fretlink/hmacaroons.git] / src / Crypto / Macaroon / Verifier.hs
index a739437222b6cc29b2d722e3507f3b96625c999d..4fc6aff14bcc08f8c7e1f6001439aa5206845091 100644 (file)
@@ -23,11 +23,13 @@ module Crypto.Macaroon.Verifier (
 ) where
 
 
-import           Control.Monad
+import           Control.Applicative
+import           Control.Monad hiding (forM)
 import           Control.Monad.IO.Class
 import           Data.Attoparsec.ByteString
 import           Data.Attoparsec.ByteString.Char8
 import           Data.Bool
+import           Data.Traversable
 import qualified Data.ByteString                  as BS
 import           Data.Either.Combinators
 
@@ -68,7 +70,7 @@ import           Crypto.Macaroon.Verifier.Internal
 -- caveat, parsed it and invalidated it;
 -- * 'Just' ('Right' '()') if the verifier has successfully verified the
 -- given caveat
-verify :: MonadIO m => Secret -> [Caveat -> m (Maybe (Either ValidationError ()))] -> Macaroon -> m (Either ValidationError Macaroon)
+verify :: (Functor m, MonadIO m) => Secret -> [Caveat -> m (Maybe (Either ValidationError ()))] -> Macaroon -> m (Either ValidationError Macaroon)
 verify secret verifiers m = join <$> forM (verifySig secret m) (verifyCavs verifiers)