/usr/lib/python3/dist-packages/pymacaroons/__pycache__
Edit: /usr/lib/python3/dist-packages/pymacaroons/__pycache__/verifier.cpython-310.pyc (3389B)
o
BQ¼YQ ã @ sŒ d dl Z zd dlmZ W n ey d dlmZ Y nw d dlmZ d dl m
Z
d dlmZm
Z
d dlmZmZmZmZ G dd „ d eƒZdS )
é N)Úcompare_digest)Úequals)ÚHashSignaturesBinder)Ú!MacaroonInvalidSignatureException)Ú FirstPartyCaveatVerifierDelegateÚ ThirdPartyCaveatVerifierDelegate)Úconvert_to_bytesÚconvert_to_stringÚgenerate_derived_keyÚhmac_digestc @ s` e Zd Zdd„ Zdd„ Zdd„ Zdd„ Zdd
d„Zddd
„Zdd„ Z dd„ Z
dd„ Zdd„ Zd S )ÚVerifierc C s* g | _ | jg| _d | _tƒ | _tƒ | _d S ©N)Ú
predicatesÚverify_exactÚ callbacksÚcalculated_signaturer Ú$first_party_caveat_verifier_delegater Ú$third_party_caveat_verifier_delegate)Úself© r ú6/usr/lib/python3/dist-packages/pymacaroons/verifier.pyÚ__init__ s
ÿÿzVerifier.__init__c C s$ |d u rt dƒ‚| j t|ƒ¡ d S )NzPredicate cannot be none.)Ú TypeErrorr Úappendr ©r Ú predicater r r Ú
satisfy_exact$ s zVerifier.satisfy_exactc C s" t |dƒs tdƒ‚| j |¡ d S )NÚ__call__z*General caveat verifiers must be callable.)Úhasattrr r r )r Úfuncr r r Úsatisfy_general) s
zVerifier.satisfy_generalc C s
|| j v S r
)r r r r r r . s
zVerifier.verify_exactNc C s t t|ƒƒ}| ||||¡S r
)r
r Úverify_discharge)r ÚmacaroonÚkeyÚdischarge_macaroonsr r r Úverify1 s üzVerifier.verifyc C s^ t ||jƒ}| ||||¡}||krt t|ƒ t |¡¡¡}| |j t |¡¡s-t
dƒ‚dS )NzSignatures do not matchT)r Úidentifier_bytesÚ_verify_caveatsÚbinasciiÚ unhexlifyr Úbind_signatureÚhexlifyÚ_signatures_matchÚsignature_bytesr )r ÚrootÚ discharger# r$ r r r r r! : s$ ÿÿÿÿþzVerifier.verify_dischargec C s. |j D ]}| |||||¡r| ||¡}q|S r
)ÚcaveatsÚ_caveat_metÚ_update_signature)r r. r" r$ Ú signatureÚcaveatr r r r' Q s
ü€zVerifier._verify_caveatsc C s. | ¡ r| j | ||¡S | j | |||||¡S r
)Úfirst_partyr Úverify_first_party_caveatr Úverify_third_party_caveat)r r. r4 r" r$ r3 r r r r1 [ s
ýþýzVerifier._caveat_metc C s$ | ¡ r| j ||¡S | j ||¡S r
)r5 r Úupdate_signaturer )r r4 r3 r r r r2 m s ýýzVerifier._update_signaturec C s t t|ƒt|ƒƒS r
)Úconstant_time_comparer )r Úmacaroon_signatureÚcomputed_signaturer r r r, { s þzVerifier._signatures_matchr
)
Ú__name__Ú
__module__Ú__qualname__r r r r r% r! r' r1 r2 r, r r r r r s
r )r( Úhmacr r9 ÚImportErrorÚpymacaroons.utilsr Úpymacaroons.bindersr Úpymacaroons.exceptionsr Úpymacaroons.caveat_delegatesr r r r r
r Úobjectr r r r r Ú
s ÿ