| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Network.HTTP.Client.OpenSSL
Description
Support for making connections via the OpenSSL library.
Synopsis
- withOpenSSL :: IO a -> IO a
- newOpenSSLManager :: MonadIO m => m Manager
- opensslManagerSettings :: IO SSLContext -> ManagerSettings
- defaultMakeContext :: OpenSSLSettings -> IO SSLContext
- data OpenSSLSettings = OpenSSLSettings {}
- defaultOpenSSLSettings :: OpenSSLSettings
Documentation
withOpenSSL :: IO a -> IO a #
Computation of initializes the OpenSSL
library as necessary, and computes withOpenSSL actionaction. Every application that
uses HsOpenSSL must wrap any operations involving OpenSSL with
withOpenSSL, or they might crash:
module Main where
import OpenSSL
main :: IO ()
main = withOpenSSL $
do ...Since 0.10.3.5, withOpenSSL is safe to be applied
redundantly. Library authors may wish to wrap their functions not
to force their users to think about initialization:
get :: URI -> IO Response get uri = withOpenSSL $ internalImplementationOfGet uri
newOpenSSLManager :: MonadIO m => m Manager Source #
Create a new Manager using opensslManagerSettings and defaultMakeContext
with defaultOpenSSLSettings.
opensslManagerSettings :: IO SSLContext -> ManagerSettings Source #
Note that it is the caller's responsibility to pass in an appropriate context.
data OpenSSLSettings Source #
Constructors
| OpenSSLSettings | |
Fields | |
defaultOpenSSLSettings :: OpenSSLSettings Source #
Default OpenSSL settings. In particular:
- SSLv2 and SSLv3 are disabled
- Hostname validation
DEFAULTcipher list- Certificates loaded from OS-specific store
Note that these settings might change in the future.