gi-gio-2.0.27: Gio bindings

Copyright | Will Thompson Iñaki García Etxebarria and Jonas Platte
License | LGPL-2.1
Maintainer | Iñaki García Etxebarria
Safe Haskell | None
Language | Haskell2010

GI.Gio.Interfaces.TlsBackend

Contents

- Exported types
- Methods
  - Overloaded methods
  - getCertificateType
  - getClientConnectionType
  - getDefault
  - getDefaultDatabase
  - getDtlsClientConnectionType
  - getDtlsServerConnectionType
  - getFileDatabaseType
  - getServerConnectionType
  - setDefaultDatabase
  - supportsDtls
  - supportsTls

Description

TLS (Transport Layer Security, aka SSL) and DTLS backend.

Since: 2.28

Synopsis

- newtype TlsBackend = TlsBackend (ManagedPtr TlsBackend)
- class (GObject o, IsDescendantOf TlsBackend o) => IsTlsBackend o
- toTlsBackend :: (MonadIO m, IsTlsBackend o) => o -> m TlsBackend
- tlsBackendGetCertificateType :: (HasCallStack, MonadIO m, IsTlsBackend a) => a -> m GType
- tlsBackendGetClientConnectionType :: (HasCallStack, MonadIO m, IsTlsBackend a) => a -> m GType
- tlsBackendGetDefault :: (HasCallStack, MonadIO m) => m TlsBackend
- tlsBackendGetDefaultDatabase :: (HasCallStack, MonadIO m, IsTlsBackend a) => a -> m TlsDatabase
- tlsBackendGetDtlsClientConnectionType :: (HasCallStack, MonadIO m, IsTlsBackend a) => a -> m GType
- tlsBackendGetDtlsServerConnectionType :: (HasCallStack, MonadIO m, IsTlsBackend a) => a -> m GType
- tlsBackendGetFileDatabaseType :: (HasCallStack, MonadIO m, IsTlsBackend a) => a -> m GType
- tlsBackendGetServerConnectionType :: (HasCallStack, MonadIO m, IsTlsBackend a) => a -> m GType
- tlsBackendSetDefaultDatabase :: (HasCallStack, MonadIO m, IsTlsBackend a, IsTlsDatabase b) => a -> Maybe b -> m ()
- tlsBackendSupportsDtls :: (HasCallStack, MonadIO m, IsTlsBackend a) => a -> m Bool
- tlsBackendSupportsTls :: (HasCallStack, MonadIO m, IsTlsBackend a) => a -> m Bool

# Exported types

newtype TlsBackend Source #

Memory-managed wrapper type.

Constructors

TlsBackend (ManagedPtr TlsBackend) |

#### Instances

Instances details

Eq TlsBackend Source # |
Instance details Defined in GI.Gio.Interfaces.TlsBackend Methods (==) :: TlsBackend -> TlsBackend -> Bool # (/=) :: TlsBackend -> TlsBackend -> Bool #
GObject TlsBackend Source # |
Instance details Defined in GI.Gio.Interfaces.TlsBackend
TypedObject TlsBackend Source # |
Instance details Defined in GI.Gio.Interfaces.TlsBackend Methods glibType :: IO GType Source #
ManagedPtrNewtype TlsBackend Source # |
Instance details Defined in GI.Gio.Interfaces.TlsBackend Methods toManagedPtr :: TlsBackend -> ManagedPtr TlsBackend Source #
IsGValue TlsBackend Source # | Convert `TlsBackend` to and from `GValue` with `toGValue` and `fromGValue`.
Instance details Defined in GI.Gio.Interfaces.TlsBackend Methods toGValue :: TlsBackend -> IO GValue Source # fromGValue :: GValue -> IO TlsBackend Source #
HasParentTypes TlsBackend Source # |
Instance details Defined in GI.Gio.Interfaces.TlsBackend
type ParentTypes TlsBackend Source # |
Instance details Defined in GI.Gio.Interfaces.TlsBackend type ParentTypes TlsBackend = '[Object]

class (GObject o, IsDescendantOf TlsBackend o) => IsTlsBackend o Source #

Type class for types which can be safely cast to `TlsBackend`, for instance with `toTlsBackend`.

#### Instances

Instances details

(GObject o, IsDescendantOf TlsBackend o) => IsTlsBackend o Source # |
Instance details Defined in GI.Gio.Interfaces.TlsBackend

toTlsBackend :: (MonadIO m, IsTlsBackend o) => o -> m TlsBackend Source #

Cast to `TlsBackend`, for types for which this is known to be safe. For general casts, use `castTo`.

# Methods

## Overloaded methods

## getCertificateType

tlsBackendGetCertificateType Source #

Arguments

:: (HasCallStack, MonadIO m, IsTlsBackend a) |
=> a | `backend`: the `TlsBackend`
-> m GType | Returns: the `GType` of `backend`'s `TlsCertificate` implementation.

Gets the `GType` of `backend`'s `TlsCertificate` implementation.

Since: 2.28

## getClientConnectionType

tlsBackendGetClientConnectionType Source #

Arguments

:: (HasCallStack, MonadIO m, IsTlsBackend a) |
=> a | `backend`: the `TlsBackend`
-> m GType | Returns: the `GType` of `backend`'s `TlsClientConnection` implementation.

Gets the `GType` of `backend`'s `TlsClientConnection` implementation.

Since: 2.28

## getDefault

tlsBackendGetDefault Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> m TlsBackend | Returns: a `TlsBackend`

Gets the default `TlsBackend` for the system.

Since: 2.28

## getDefaultDatabase

tlsBackendGetDefaultDatabase Source #

Arguments

:: (HasCallStack, MonadIO m, IsTlsBackend a) |
=> a | `backend`: the `TlsBackend`
-> m TlsDatabase | Returns: the default database, which should be unreffed when done.

Gets the default `TlsDatabase` used to verify TLS connections.

Since: 2.30

## getDtlsClientConnectionType

tlsBackendGetDtlsClientConnectionType Source #

Arguments

:: (HasCallStack, MonadIO m, IsTlsBackend a) |
=> a | `backend`: the `TlsBackend`
-> m GType | Returns: the `GType` of `backend`’s `DtlsClientConnection` implementation, or `G_TYPE_INVALID` if this backend doesn’t support DTLS.

Gets the `GType` of `backend`’s `DtlsClientConnection` implementation.

Since: 2.48

## getDtlsServerConnectionType

tlsBackendGetDtlsServerConnectionType Source #

Arguments

:: (HasCallStack, MonadIO m, IsTlsBackend a) |
=> a | `backend`: the `TlsBackend`
-> m GType | Returns: the `GType` of `backend`’s `DtlsServerConnection` implementation, or `G_TYPE_INVALID` if this backend doesn’t support DTLS.

Gets the `GType` of `backend`’s `DtlsServerConnection` implementation.

Since: 2.48

## getFileDatabaseType

tlsBackendGetFileDatabaseType Source #

Arguments

:: (HasCallStack, MonadIO m, IsTlsBackend a) |
=> a | `backend`: the `TlsBackend`
-> m GType | Returns: the `GType` of backend's `TlsFileDatabase` implementation.

Gets the `GType` of `backend`'s `TlsFileDatabase` implementation.

Since: 2.30

## getServerConnectionType

tlsBackendGetServerConnectionType Source #

Arguments

:: (HasCallStack, MonadIO m, IsTlsBackend a) |
=> a | `backend`: the `TlsBackend`
-> m GType | Returns: the `GType` of `backend`'s `TlsServerConnection` implementation.

Gets the `GType` of `backend`'s `TlsServerConnection` implementation.

Since: 2.28

## setDefaultDatabase

tlsBackendSetDefaultDatabase Source #

Arguments

:: (HasCallStack, MonadIO m, IsTlsBackend a, IsTlsDatabase b) |
=> a | `backend`: the `TlsBackend`
-> Maybe b | `database`: the `TlsDatabase`
-> m () |

Set the default `TlsDatabase` used to verify TLS connections

Any subsequent call to `tlsBackendGetDefaultDatabase` will return the database set in this call. Existing databases and connections are not modified.

Setting a `Nothing` default database will reset to using the system default database as if `tlsBackendSetDefaultDatabase` had never been called.

Since: 2.60

## supportsDtls

tlsBackendSupportsDtls Source #

Arguments

:: (HasCallStack, MonadIO m, IsTlsBackend a) |
=> a | `backend`: the `TlsBackend`
-> m Bool | Returns: whether DTLS is supported

Checks if DTLS is supported. DTLS support may not be available even if TLS support is available, and vice-versa.

Since: 2.48

## supportsTls

tlsBackendSupportsTls Source #

Arguments

:: (HasCallStack, MonadIO m, IsTlsBackend a) |
=> a | `backend`: the `TlsBackend`
-> m Bool | Returns: whether or not TLS is supported

Checks if TLS is supported; if this returns `False` for the default `TlsBackend`, it means no "real" TLS backend is available.

Since: 2.28