network-conduit-tls-1.0.2: Create TLS-aware network code with conduits

Safe HaskellNone

Data.Conduit.Network.TLS

Contents

Synopsis

Server

tlsConfigSource

Arguments

:: HostPreference 
-> Int

port

-> FilePath

certificate

-> FilePath

key

-> TLSConfig 

tlsAppDataSource

Arguments

:: Context

a TLS context

-> SockAddr

remote address

-> Maybe SockAddr

local address

-> AppData IO 

Create an AppData from an existing tls Context value. This is a lower level function, allowing you to create a connection in any way you want.

Sample usage:

 import Network.Simple.TCP.TLS

 myapp :: Application IO
 ...
 main = do
     cset <- getDefaultClientSettings
     connect cset "host" "port" $
         (\(ctx, addr) -> myapp $ tlsAppData ctx addr Nothing)

Since 1.0.1

Client

data TLSClientConfig m Source

Settings type for TLS client connection.

Since 1.0.2

tlsClientConfigSource

Arguments

:: Int

port

-> ByteString

host

-> TLSClientConfig m 

Smart constructor for TLSClientConfig.

Since 1.0.2

runTLSClient :: (MonadIO m, MonadBaseControl IO m) => TLSClientConfig m -> Application m -> m ()Source

Run an application with the given configuration.

Since 1.0.2

tlsClientUseTLS :: TLSClientConfig m -> BoolSource

Default is True. If set to False, will make a non-TLS connection.

Since 1.0.2

tlsClientTLSSettings :: TLSClientConfig m -> TLSSettingsSource

TLS settings to use. If not provided, defaults will be provided.

Since 1.0.2

tlsClientSockSettings :: TLSClientConfig m -> Maybe SockSettingsSource

Socks configuration; default is Nothing. If absent, Socks will not be used.

Since 1.0.2

tlsClientConnectionContext :: TLSClientConfig m -> Maybe ConnectionContextSource

Connection context. Default is Nothing, which will generate a new context automatically. If you will be making many connections, it's recommended to call initConnectionContext yourself.

Since 1.0.2