HTTP-4000.1.1: A library for client-side HTTP

Portabilitynon-portable (not tested)
Stabilityexperimental
MaintainerSigbjorn Finne <sigbjorn.finne@gmail.com>

Network.HTTP.Auth

Description

Representing HTTP Auth values in Haskell. Right now, it contains mostly functionality needed by Network.Browser.

Synopsis

Documentation

data Authority

Authority specifies the HTTP Authentication method to use for a given domain/realm; Basic or Digest.

Constructors

AuthBasic 

Fields

auRealm :: String
 
auUsername :: String
 
auPassword :: String
 
auSite :: URI
 
AuthDigest 

Fields

auRealm :: String
 
auUsername :: String
 
auPassword :: String
 
auNonce :: String
 
auAlgorithm :: Maybe Algorithm
 
auDomain :: [URI]
 
auOpaque :: Maybe String
 
auQop :: [Qop]
 

data Algorithm

Algorithm controls the digest algorithm to, MD5 or MD5Session.

Constructors

AlgMD5 
AlgMD5sess 

Instances

Eq Algorithm 
Show Algorithm 

data Challenge

Constructors

ChalBasic 

Fields

chRealm :: String
 
ChalDigest 

Fields

chRealm :: String
 
chDomain :: [URI]
 
chNonce :: String
 
chOpaque :: Maybe String
 
chStale :: Bool
 
chAlgorithm :: Maybe Algorithm
 
chQop :: [Qop]
 

data Qop

Constructors

QopAuth 
QopAuthInt 

Instances

Eq Qop 
Show Qop 

headerToChallenge :: URI -> Header -> Maybe Challenge

headerToChallenge base www_auth tries to convert the WWW-Authenticate header www_auth into a Challenge value.

withAuthority :: Authority -> Request ty -> String

withAuthority auth req generates a credentials value from the auth Authority, in the context of the given request.

If a client nonce was to be used then this function might need to be of type ... -> BrowserAction String