+
    üÐj_  ã                   óX   € R t ^ RIHt ^ RIHt ^ RIHt ]! ]4       ! R R4      4       tR# )zg
Implementation of RFC2617: HTTP Digest Authentication

@see: U{http://www.faqs.org/rfcs/rfc2617.html}
)Úimplementer)Úcredentials)ÚICredentialFactoryc                   ó:   a € ] tR t^t o RtRtR tR tR tRt	V t
R# )ÚDigestCredentialFactoryzd
Wrapper for L{digest.DigestCredentialFactory} that implements the
L{ICredentialFactory} interface.
s   digestc                ó<   € \         P                  ! W4      V n        R# )z>
Create the digest credential factory that this object wraps.
N)r   r   Údigest)ÚselfÚ	algorithmÚauthenticationRealms   &&&Ú:/usr/lib/python3/dist-packages/twisted/web/_auth/digest.pyÚ__init__Ú DigestCredentialFactory.__init__   s   € ô "×9Ò9Øó
ˆŽó    c                óh   € V P                   P                  VP                  4       P                  4      # )a  
Generate the challenge for use in the WWW-Authenticate header

@param request: The L{IRequest} to with access was denied and for the
    response to which this challenge is being generated.

@return: The L{dict} that can be used to generate a WWW-Authenticate
    header.
)r   ÚgetChallengeÚgetClientAddressÚhost)r	   Úrequests   &&r   r   Ú$DigestCredentialFactory.getChallenge#   s(   € ð �{‰{×'Ñ'¨×(@Ñ(@Ó(B×(GÑ(GÓHÐHr   c                ó~   € V P                   P                  WP                  VP                  4       P                  4      # )zŠ
Create a L{twisted.cred.credentials.DigestedCredentials} object
from the given response and request.

@see: L{ICredentialFactory.decode}
)r   ÚdecodeÚmethodr   r   )r	   Úresponser   s   &&&r   r   ÚDigestCredentialFactory.decode/   s3   € ð �{‰{×!Ñ!Ø—n‘n g×&>Ñ&>Ó&@×&EÑ&Eó
ð 	
r   )r   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__Úschemer   r   r   Ú__static_attributes__Ú__classdictcell__)Ú__classdict__s   @r   r   r      s&   ø‡ € ñð
 €Fò
ò
I÷	
ð 	
r   r   N)r   Úzope.interfacer   Útwisted.credr   Útwisted.web.iwebr   r   © r   r   Ú<module>r(      s4   ðñ
õ 'å $Ý /ñ ÐÓ ÷%
ð %
ó !ò%
r   