python (3.12.0)

(root)/
lib/
python3.12/
test/
__pycache__/
test_crypt.cpython-312.opt-2.pyc

͑e,ddlZddlZddlmZmZ	eddrej
dejdZdZejejdk(dejed	Gd
dejZejedGd
dejZedk(rej&yy#e	$r;Z
ejdk7rej
ee
dZee
ZYdZ
[
dZ
[
wwxYw)N)check_sanitizerwarnings_helperT)addressmemoryz.The crypt module SEGFAULTs on ASAN/MSAN buildscryptwin32zThis should only run on windowszimport succeededceZdZdZy)TestWhyCryptDidNotImportc0|jdty)Nz
not supported)assertInIMPORT_ERRORselfs C/BuggyBox/python/3.12.0/bootstrap/lib/python3.12/test/test_crypt.pytest_import_failure_messagez4TestWhyCryptDidNotImport.test_import_failure_messages

o|4N)__name__
__module____qualname__rrrr
r
s5rr
zcrypt module is requiredc*eZdZdZdZdZdZeje	xr2e	je	jvxse	je	jvddZ
eje	xre	je	jvddZd	Zy
)
CryptTestCasectjd}tjd|}|j||tjdd}|)tjd|}|j||yy)N
mypasswordab)rassertEqual)rcrcr2s   r
test_cryptzCryptTestCase.test_cryptsj
[[
&kk,+b!
[[t
,
>++lB/CS"%rc	|jttjdtjD]}tj|}|j
t||jz
hd|jsO|j
|j|dt||jz
y)N@>r)	rlenr
_saltcharsmethodsmksaltr
salt_charsident)rmethodsalts   r	test_saltzCryptTestCase.test_salt&sU--.3mm	PF<<'DMM#d)f&7&779KL||

fllD1M#d)F<M<M2M,NO		PrctjD]}tjd|}|jt||jtjd|}|j||tjdtj|}|jt||jy)Nassword)rr)rr'
total_sizer*)rr-rrs    rtest_saltedcryptzCryptTestCase.test_saltedcrypt.smm	9FY/BSWf&7&78++i,CS"%YV(<=BSWf&7&78
	9rcZ|jttjdk\tj
j
dr0|jtjtjgy|jtjdtjy)Nr"openbsd)

assertTruer'rr)sysplatform
startswithrMETHOD_BLOWFISHMETHOD_CRYPTrs rtest_methodszCryptTestCase.test_methods7sjEMM*a/0<<""9-U]]U-B-B,CDU]]2.0B0BCrzrequires support of SHA-2ctjtjfD]}dD]}tj||}|j	d|z||jt
||jz
dt
t|ztjd|}|j|tjd|}|j||y)N)i'iroundsz$rounds=%d$r)
r
METHOD_SHA256
METHOD_SHA512r*rrr'r+strr7)rr-rAr.rrs      rtest_sha2_roundszCryptTestCase.test_sha2_rounds>s**E,?,?@		*F/
*||F6|:

mf4d;  TV->->!>!#c#f+&6!68[[t4#kk,3  b)
*		*rzrequires support of BlowfishctddD]}tjtjd|z}|j	d|z||j	t|tjjz
ddhtjd|}|j|tjd|}|j||y)	Nr$rBr"r@z$%02d$r%r&r)	rangerr*r;rr'r+r7r)r
log_roundsr.rrs     rtest_blowfish_roundsz"CryptTestCase.test_blowfish_roundsQs 2,	&J<< 5 5a:o<NDMM(Z/6MM#d)e&;&;&F&FFAO\40BOOB++lB/CS"%	&rc|tjtjtjfD]}|j	t
5tj
|dddd|j	t
5tj
|dddddddddzfD]7}|j	t5tj
||ddd9|j	t5tj
tjddddtjtjfD]8}|jtd	5tj
|d
ddd:y#1swY#xYw#1swYxYw#1swYxYw#1swYxYw#1swYvxYw)N4096r@g@rr"r6ir?supporti)rrCrDr;assertRaises	TypeErrorr*
ValueErrorr<
METHOD_MD5assertRaisesRegex)rr-rAs   rtest_invalid_roundsz!CryptTestCase.test_invalid_rounds^s|**E,?,?,,.	8F""9-
4VF3
4""9-
4VF3
4aQV,
8&&z28LLL788
8
	8

z
*	=LL..tL<	=))5+;+;<	2F''
I>
2VD1
2
2	2
4
4
4
488	=	=
2
2s<F=F>F7&F&F2F	F	F#&F/2F;	N)rrrrr/r3r=unittest
skipUnlessrrCr)rDrFr;rJrSrrrrrs&P9DX
	
5==0XE4G4G5==4X#
*
*X
8%''5==8:X&&2rr__main__)r8rTtest.supportrrSkipTestimport_deprecatedrr
ImportErrorexr9rErUskipIfTestCaser
rrmainrrr<module>r_s,
9	tD1h PQQ-O--g6ELS\\W,.OP*+5x005,Q5U67Q2H%%Q28Q2hzHMMOI
||whB((Er7L	s0CD1DD