gi-soup-2.4.24: Libsoup bindings
CopyrightWill Thompson Iñaki García Etxebarria and Jonas Platte
LicenseLGPL-2.1
MaintainerIñaki García Etxebarria
Safe HaskellSafe-Inferred
LanguageHaskell2010

GI.Soup.Objects.AuthDomainDigest

Description

AuthDomainDigest handles the server side of HTTP "Digest" authentication.

Synopsis

Exported types

newtype AuthDomainDigest Source #

Memory-managed wrapper type.

Constructors

AuthDomainDigest (ManagedPtr AuthDomainDigest) 

Instances

Instances details
Eq AuthDomainDigest Source # 
Instance details

Defined in GI.Soup.Objects.AuthDomainDigest

GObject AuthDomainDigest Source # 
Instance details

Defined in GI.Soup.Objects.AuthDomainDigest

ManagedPtrNewtype AuthDomainDigest Source # 
Instance details

Defined in GI.Soup.Objects.AuthDomainDigest

TypedObject AuthDomainDigest Source # 
Instance details

Defined in GI.Soup.Objects.AuthDomainDigest

Methods

glibType :: IO GType

HasParentTypes AuthDomainDigest Source # 
Instance details

Defined in GI.Soup.Objects.AuthDomainDigest

IsGValue (Maybe AuthDomainDigest) Source #

Convert AuthDomainDigest to and from GValue. See toGValue and fromGValue.

Instance details

Defined in GI.Soup.Objects.AuthDomainDigest

Methods

gvalueGType_ :: IO GType

gvalueSet_ :: Ptr GValue -> Maybe AuthDomainDigest -> IO ()

gvalueGet_ :: Ptr GValue -> IO (Maybe AuthDomainDigest)

type ParentTypes AuthDomainDigest Source # 
Instance details

Defined in GI.Soup.Objects.AuthDomainDigest

type ParentTypes AuthDomainDigest = '[AuthDomain, Object]

class (GObject o, IsDescendantOf AuthDomainDigest o) => IsAuthDomainDigest o Source #

Type class for types which can be safely cast to AuthDomainDigest, for instance with toAuthDomainDigest.

Instances

Instances details
(GObject o, IsDescendantOf AuthDomainDigest o) => IsAuthDomainDigest o Source # 
Instance details

Defined in GI.Soup.Objects.AuthDomainDigest

toAuthDomainDigest :: (MonadIO m, IsAuthDomainDigest o) => o -> m AuthDomainDigest Source #

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

Methods

encodePassword

authDomainDigestEncodePassword Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> Text

username: a username

-> Text

realm: an auth realm name

-> Text

password: the password for username in realm

-> m Text

Returns: the encoded password

Encodes the username/realm/password triplet for Digest authentication. (That is, it returns a stringified MD5 hash of username, realm, and password concatenated together). This is the form that is needed as the return value of AuthDomainDigest's auth handler.

For security reasons, you should store the encoded hash, rather than storing the cleartext password itself and calling this method only when you need to verify it. This way, if your server is compromised, the attackers will not gain access to cleartext passwords which might also be usable at other sites. (Note also that the encoded password returned by this method is identical to the encoded password stored in an Apache .htdigest file.)

setAuthCallback

authDomainDigestSetAuthCallback Source #

Arguments

:: (HasCallStack, MonadIO m, IsAuthDomainDigest a) 
=> a

domain: the domain

-> AuthDomainDigestAuthCallback

callback: the callback

-> m () 

Sets the callback that domain will use to authenticate incoming requests. For each request containing authorization, domain will invoke the callback, and then either accept or reject the request based on callback's return value.

You can also set the auth callback by setting the AUTH_DOMAIN_DIGEST_AUTH_CALLBACK and AUTH_DOMAIN_DIGEST_AUTH_DATA properties, which can also be used to set the callback at construct time.

Properties

authCallback

clearAuthDomainDigestAuthCallback :: (MonadIO m, IsAuthDomainDigest o) => o -> m () Source #

Set the value of the “auth-callback” property to Nothing. When overloading is enabled, this is equivalent to

clear #authCallback

constructAuthDomainDigestAuthCallback :: (IsAuthDomainDigest o, MonadIO m) => FunPtr C_AuthDomainDigestAuthCallback -> m (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “auth-callback” property. This is rarely needed directly, but it is used by new.

getAuthDomainDigestAuthCallback :: (MonadIO m, IsAuthDomainDigest o) => o -> m (Maybe AuthDomainDigestAuthCallback_WithClosures) Source #

Get the value of the “auth-callback” property. When overloading is enabled, this is equivalent to

get authDomainDigest #authCallback

setAuthDomainDigestAuthCallback :: (MonadIO m, IsAuthDomainDigest o) => o -> FunPtr C_AuthDomainDigestAuthCallback -> m () Source #

Set the value of the “auth-callback” property. When overloading is enabled, this is equivalent to

set authDomainDigest [ #authCallback := value ]

authData

The data to pass to the AuthDomainDigestAuthCallback

constructAuthDomainDigestAuthData :: (IsAuthDomainDigest o, MonadIO m) => Ptr () -> m (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “auth-data” property. This is rarely needed directly, but it is used by new.

getAuthDomainDigestAuthData :: (MonadIO m, IsAuthDomainDigest o) => o -> m (Ptr ()) Source #

Get the value of the “auth-data” property. When overloading is enabled, this is equivalent to

get authDomainDigest #authData

setAuthDomainDigestAuthData :: (MonadIO m, IsAuthDomainDigest o) => o -> Ptr () -> m () Source #

Set the value of the “auth-data” property. When overloading is enabled, this is equivalent to

set authDomainDigest [ #authData := value ]