38 lines
1.1 KiB
Haskell
38 lines
1.1 KiB
Haskell
-- |
|
|
-- Module : Network.TLS.X509
|
|
-- License : BSD-style
|
|
-- Maintainer : Vincent Hanquez <vincent@snarc.org>
|
|
-- Stability : experimental
|
|
-- Portability : unknown
|
|
--
|
|
-- X509 helpers
|
|
--
|
|
module Network.TLS.X509
|
|
( CertificateChain(..)
|
|
, Certificate(..)
|
|
, SignedCertificate
|
|
, getCertificate
|
|
, isNullCertificateChain
|
|
, CertificateRejectReason(..)
|
|
, CertificateUsage(..)
|
|
) where
|
|
|
|
import Data.X509
|
|
|
|
isNullCertificateChain :: CertificateChain -> Bool
|
|
isNullCertificateChain (CertificateChain l) = null l
|
|
|
|
-- | Certificate and Chain rejection reason
|
|
data CertificateRejectReason =
|
|
CertificateRejectExpired
|
|
| CertificateRejectRevoked
|
|
| CertificateRejectUnknownCA
|
|
| CertificateRejectOther String
|
|
deriving (Show,Eq)
|
|
|
|
-- | Certificate Usage callback possible returns values.
|
|
data CertificateUsage =
|
|
CertificateUsageAccept -- ^ usage of certificate accepted
|
|
| CertificateUsageReject CertificateRejectReason -- ^ usage of certificate rejected
|
|
deriving (Show,Eq)
|
|
|