{-# LANGUAGE OverloadedStrings #-}
module Network.DomainAuth.DKIM.Types where
import Data.ByteString (ByteString)
import Network.DNS
import Network.DomainAuth.Mail
dkimFieldKey :: CanonFieldKey
dkimFieldKey :: CanonFieldKey
dkimFieldKey = CanonFieldKey
"dkim-signature"
data DkimSigAlgo = RSA_SHA1 | RSA_SHA256 deriving (DkimSigAlgo -> DkimSigAlgo -> Bool
(DkimSigAlgo -> DkimSigAlgo -> Bool)
-> (DkimSigAlgo -> DkimSigAlgo -> Bool) -> Eq DkimSigAlgo
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: DkimSigAlgo -> DkimSigAlgo -> Bool
== :: DkimSigAlgo -> DkimSigAlgo -> Bool
$c/= :: DkimSigAlgo -> DkimSigAlgo -> Bool
/= :: DkimSigAlgo -> DkimSigAlgo -> Bool
Eq, Int -> DkimSigAlgo -> ShowS
[DkimSigAlgo] -> ShowS
DkimSigAlgo -> String
(Int -> DkimSigAlgo -> ShowS)
-> (DkimSigAlgo -> String)
-> ([DkimSigAlgo] -> ShowS)
-> Show DkimSigAlgo
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> DkimSigAlgo -> ShowS
showsPrec :: Int -> DkimSigAlgo -> ShowS
$cshow :: DkimSigAlgo -> String
show :: DkimSigAlgo -> String
$cshowList :: [DkimSigAlgo] -> ShowS
showList :: [DkimSigAlgo] -> ShowS
Show)
data DkimCanonAlgo = DKIM_SIMPLE | DKIM_RELAXED deriving (DkimCanonAlgo -> DkimCanonAlgo -> Bool
(DkimCanonAlgo -> DkimCanonAlgo -> Bool)
-> (DkimCanonAlgo -> DkimCanonAlgo -> Bool) -> Eq DkimCanonAlgo
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: DkimCanonAlgo -> DkimCanonAlgo -> Bool
== :: DkimCanonAlgo -> DkimCanonAlgo -> Bool
$c/= :: DkimCanonAlgo -> DkimCanonAlgo -> Bool
/= :: DkimCanonAlgo -> DkimCanonAlgo -> Bool
Eq, Int -> DkimCanonAlgo -> ShowS
[DkimCanonAlgo] -> ShowS
DkimCanonAlgo -> String
(Int -> DkimCanonAlgo -> ShowS)
-> (DkimCanonAlgo -> String)
-> ([DkimCanonAlgo] -> ShowS)
-> Show DkimCanonAlgo
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> DkimCanonAlgo -> ShowS
showsPrec :: Int -> DkimCanonAlgo -> ShowS
$cshow :: DkimCanonAlgo -> String
show :: DkimCanonAlgo -> String
$cshowList :: [DkimCanonAlgo] -> ShowS
showList :: [DkimCanonAlgo] -> ShowS
Show)
data DKIM = DKIM
{ DKIM -> CanonFieldKey
dkimVersion :: ByteString
, DKIM -> DkimSigAlgo
dkimSigAlgo :: DkimSigAlgo
, DKIM -> CanonFieldKey
dkimSignature :: ByteString
, DKIM -> CanonFieldKey
dkimBodyHash :: ByteString
, :: DkimCanonAlgo
, DKIM -> DkimCanonAlgo
dkimBodyCanon :: DkimCanonAlgo
, DKIM -> CanonFieldKey
dkimDomain0 :: ByteString
, DKIM -> [CanonFieldKey]
dkimFields :: [CanonFieldKey]
, DKIM -> Maybe Int
dkimLength :: Maybe Int
, DKIM -> CanonFieldKey
dkimSelector0 :: ByteString
}
deriving (DKIM -> DKIM -> Bool
(DKIM -> DKIM -> Bool) -> (DKIM -> DKIM -> Bool) -> Eq DKIM
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: DKIM -> DKIM -> Bool
== :: DKIM -> DKIM -> Bool
$c/= :: DKIM -> DKIM -> Bool
/= :: DKIM -> DKIM -> Bool
Eq, Int -> DKIM -> ShowS
[DKIM] -> ShowS
DKIM -> String
(Int -> DKIM -> ShowS)
-> (DKIM -> String) -> ([DKIM] -> ShowS) -> Show DKIM
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> DKIM -> ShowS
showsPrec :: Int -> DKIM -> ShowS
$cshow :: DKIM -> String
show :: DKIM -> String
$cshowList :: [DKIM] -> ShowS
showList :: [DKIM] -> ShowS
Show)
dkimDomain :: DKIM -> Domain
dkimDomain :: DKIM -> CanonFieldKey
dkimDomain = DKIM -> CanonFieldKey
dkimDomain0
dkimSelector :: DKIM -> ByteString
dkimSelector :: DKIM -> CanonFieldKey
dkimSelector = DKIM -> CanonFieldKey
dkimSelector0