-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/

-- | HTTP over SSL/TLS support for Warp via the TLS package
--   
--   HTTP over SSL/TLS support for Warp via the TLS package.
@package warp-tls
@version 1.4.1.4

-- | HTTP over SSL/TLS support for Warp via the TLS package.
module Network.Wai.Handler.WarpTLS
data TLSSettings

-- | File containing the certificate.
certFile :: TLSSettings -> FilePath

-- | File containing the key
keyFile :: TLSSettings -> FilePath

-- | Do we allow insecure connections with this server as well? Default is
--   a simple text response stating that a secure connection is required.
--   
--   Since 1.4.0
onInsecure :: TLSSettings -> OnInsecure

-- | The level of logging to turn on.
--   
--   Default: defaultLogging.
--   
--   Since 1.4.0
tlsLogging :: TLSSettings -> Logging

-- | Default TLSSettings. Use this to create TLSSettings with
--   the field record name.
defaultTlsSettings :: TLSSettings

-- | A smart constructor for TLSSettings.
tlsSettings :: FilePath -> FilePath -> TLSSettings

-- | An action when a plain HTTP comes to HTTP over TLS/SSL port.
data OnInsecure
DenyInsecure :: ByteString -> OnInsecure
AllowInsecure :: OnInsecure

-- | Running Application with TLSSettings and
--   Settings.
runTLS :: TLSSettings -> Settings -> Application -> IO ()

-- | Running Application with TLSSettings and Settings
--   using specified Socket.
runTLSSocket :: TLSSettings -> Settings -> Socket -> Application -> IO ()
data WarpTLSException
InsecureConnectionDenied :: WarpTLSException
instance Typeable WarpTLSException
instance Show WarpTLSException
instance Exception WarpTLSException
