File "api_jwt.cpython-37.opt-1.pyc"

Full Path: /home/attunedd/public_html/byp/izo/con7ext_sym404/rintoar.txt/opt/alt/python37/lib/python3.7/site-packages/jwt/__pycache__/api_jwt.cpython-37.opt-1.pyc
File size: 5.65 KB
MIME-type: text/x-bytecode.python
Charset: 8 bit

B

E`@sddlZddlmZddlmZmZddlmZmZddlm	Z	m
Z
mZmZm
Z
mZddlmZddlmZmZmZmZmZmZmZGd	d
d
ZeZejZejZejZdS)N)timegm)IterableMapping)datetime	timedelta)AnyDictListOptionalTypeUnion)api_jws)DecodeErrorExpiredSignatureErrorImmatureSignatureErrorInvalidAudienceErrorInvalidIssuedAtErrorInvalidIssuerErrorMissingRequiredClaimErrorc@seZdZd ddZeeeeee	effdddZ
d!eeefeeeeee
ejedd	d
Zd"eee	eeeeefdd
dZd#eee	eeeeefdddZd$ddZddZddZddZddZddZddZdS)%PyJWTNcCs|dkri}|||_dS)N)_get_default_optionsoptions)selfrr</opt/alt/python37/lib/python3.7/site-packages/jwt/api_jwt.py__init__szPyJWT.__init__)returncCsddddddgdS)NT)verify_signature
verify_exp
verify_nbf
verify_iat
verify_aud
verify_issrequirerrrrrrszPyJWT._get_default_optionsHS256)payloadkey	algorithmheadersjson_encoderrcCstt|tstd|}x0dD](}t||tr t||||<q Wtj	|d|d
d}t
|||||S)NzJExpecting a mapping object, as JWT only supports JSON objects as payloads.)expiatnbf),:)Z
separatorsclszutf-8)
isinstancer	TypeErrorcopygetrrutctimetuplejsondumpsencoder)rr&r'r(r)r*Z
time_claimZjson_payloadrrrr8%s	

zPyJWT.encode)jwtr'
algorithmsrrc

Ks
|dkrddi}n|dd|dsb|dd|dd|dd|dd|dd|drv|svtd	tj|f|||d
|}yt|d}Wn.tk
r}ztd|Wdd}~XYnXt|tstd
|j	|}	|j
||	f|||d<|S)NrTrFr r!r"r#z\It is required that you pass in a value for the "algorithms" argument when calling decode().)r'r;rr&zInvalid payload string: %sz-Invalid payload string: must be a json object)
setdefaultrrdecode_completer6loads
ValueErrorr1dictr_validate_claims)
rr:r'r;rkwargsdecodedr&eZmerged_optionsrrrr=As8


zPyJWT.decode_completecKs|j||||f|}|dS)Nr&)r=)rr:r'r;rrBrCrrrdecodeoszPyJWT.decodercKst|tr|}t|tttdtfs0td|||t	t
}d|krj|drj|
|||d|kr|dr||||d|kr|dr|||||dr||||d	r|||dS)
Nz,audience must be a string, iterable, or Noner,r!r-r r+rr#r")r1rZ
total_secondsbytesstrtyperr2_validate_required_claimsrrZutcnowr5
_validate_iat
_validate_nbf
_validate_exp
_validate_iss
_validate_aud)rr&raudienceissuerleewayrBnowrrrrAzs 
zPyJWT._validate_claimscCs,x&|dD]}||dkr
t|q
WdS)Nr$)r4r)rr&rZclaimrrrrIszPyJWT._validate_required_claimscCs2yt|dWntk
r,tdYnXdS)Nr,z)Issued At claim (iat) must be an integer.)intr?r)rr&rRrQrrrrJszPyJWT._validate_iatcCsFyt|d}Wntk
r,tdYnX|||krBtddS)Nr-z*Not Before claim (nbf) must be an integer.z The token is not yet valid (nbf))rSr?rr)rr&rRrQr-rrrrKszPyJWT._validate_nbfcCsFyt|d}Wntk
r,tdYnX|||krBtddS)Nr+z/Expiration Time claim (exp) must be an integer.zSignature has expired)rSr?rr)rr&rRrQr+rrrrLszPyJWT._validate_expcs|dkrd|krdS|dk	r,d|kr,td|dkrDd|krDtd|dttr\gttsntdtddDrtdt|tr|g}tfdd|DstddS)NaudzInvalid audiencezInvalid claim format in tokencss|]}t|tVqdS)N)r1rG).0crrr	<genexpr>sz&PyJWT._validate_aud.<locals>.<genexpr>c3s|]}|kVqdS)Nr)rUrT)audience_claimsrrrWs)rrr1rGlistany)rr&rOr)rXrrNs"


zPyJWT._validate_audcCs4|dkrdSd|krtd|d|kr0tddS)NZisszInvalid issuer)rr)rr&rPrrrrMszPyJWT._validate_iss)N)r%NN)r9NN)r9NN)NNr)__name__
__module____qualname__rstaticmethodrrGrboolr	rrr
rr6ZJSONEncoderr8r=rErArIrJrKrLrNrMrrrrrs,
$"*
		r)r6Zcalendarrcollections.abcrrrrtypingrrr	r
rrr9r
exceptionsrrrrrrrrZ_jwt_global_objr8r=rErrrr<module>s $I