python (3.12.0)

(root)/
lib/
python3.12/
__pycache__/
crypt.cpython-312.opt-1.pyc

ˑeI
dZddlZ	ddlZddlZddlZ	ddl
Z
ddlmZ
ddlmZe
j"ed	e	j&e	j(zd
zZe
ZGddedd
Zd%dddZd%dZgZdddZeddddedddddD]Zeddezddeezdsneddd d!ed"dd#d$[[y#e$r ej
dk(rededwxYw)&zEWrapper to the POSIX crypt library call and associated functionality.Nwin32z,The crypt module is not supported on Windowsz;The required _crypt module was not built as part of CPython)SystemRandom)
namedtuple)
)removez./ceZdZdZdZy)_MethodziClass representing a salt method per the Modular Crypt Format or the
    legacy 2-character crypt method.c8dj|jS)Nz<crypt.METHOD_{}>)formatname)selfs 9/BuggyBox/python/3.12.0/bootstrap/lib/python3.12/crypt.py__repr__z_Method.__repr__ s"))$))44N)__name__
__module____qualname____doc__rrrr
r
s(5rr
z name ident salt_chars total_sizeroundsc|	td}|2t|ts"t|jj
d|jsd}nd|jd}|jrn|jddk(r\|d}nMtj|dz
}|d|zk7rtdd	|cxkrd
kstdtd||ddz
}nL|jd
vr.|<d|cxkrdkstdtd|d|dz
}n|t|d|djdt|jDz
}|S)zsGenerate a salt for the specified method.

    If not specified, the strongest available method will be used.

    rz+ object cannot be interpreted as an integer$2zrounds must be a power of 2z%rounds out of the range 2**4 to 2**3102d)56iiɚ;z+rounds out of the range 1000 to 999_999_999zrounds=z$ doesn't support the rounds argumentc3NK|]}tjtywN)_srchoice
_saltchars).0chars  r	<genexpr>zmksalt.<locals>.<genexpr>FsMDJ'Ms#%)methods
isinstanceint	TypeError	__class__rident
bit_length
ValueErrorjoinrange
salt_chars)methodrs
log_roundss    rmksaltr:$s~
*VS"96++4456456	6<<~Q
||Q3.>Jq1Jj( !>??
(b( !HII) !HII	
3q
!!		#60[0 !NOO1 !NOO
76(!$$A		F8#GHIIME&:K:K4LM	MMAHrch|t|trt|}tj||S)aRReturn a string representing the one-way hash of a password, with a salt
    prepended.

    If ``salt`` is not specified or is ``None``, the strongest
    available method will be selected and a salt generated.  Otherwise,
    ``salt`` may be one of the ``crypt.METHOD_*`` values, or a string as
    returned by ``crypt.mksalt()``.

    )r-r
r:_cryptcrypt)wordsalts  rr=r=Js,|z$0d|<<d##rcxt|g|}|td|z<t||}d}	td|}|r.t||jk(rtj|yy#t$rF}|j
t
jt
jt
jhvrYd}~yd}~wwxYw)NMETHOD_rrFT)
r
globalsr:r=OSErrorerrnoEINVALEPERMENOSYSlen
total_sizer,append)r
rargsr7r?resultes       r_add_methodrN\s
T
!D
!F"(GIi$&(D
Fr4#f+!2!22v77u||U[[%,,??
	sA**	B93;B43B44B9SHA512r#jSHA256r"?)byarBLOWFISHr;MD51"CRYPTrr%)rsys_sysr<ModuleNotFoundErrorplatformImportErrorrDstring_stringwarningsrandomr
_SystemRandomcollectionsr_namedtuple_deprecatedr
ascii_lettersdigitsr(r&r
r:r=r,rN_vrHrrr<module>rps9KY
01Xg.
"
"W^^
3d
:
o5k)%GH5#
$#
L$ 
$("Hc2s#Hc2r"B:sRxR#b'\$G
E32GT1b!kY}}HIIWXX	YsC%C6