=5bCrCnddlZddlZddlZddlmZddejdejdejfeffZddejd ejd ffd d ejd fddejdffZ ddejdfddejdffZ dZ dZ dZ dS)N)partialaws_secret_keyzAmazon Web Services secret keyz(\'|")[A-Za-z0-9\\\+]{40}(\'|")z(\b|_)AWS(\b|_)diffzPossible SCM diff in codez ^<<<<<<< .*$z ^>>>>>>> .*$ssh_rsa_private_keyzPossible SSH private keyz+^-{5}(BEGIN|END)\s+RSA\s+PRIVATE\s+KEY-{5}$ssh_rsa_public_keyzPossible SSH public keyz7^ssh-rsa\s+AAAA[0-9A-Za-z+/]+[=]{0,3}\s*([^@]+@[^@]+)?$passwordzPossible hardcoded passwordzA(\b|[A-Z0-9_]*_)PASSWORD(_[A-Z0-9_]*|\b)\s*=\s(\'|")[^\'"]+(\'|")secretzPossible hardcoded secret keyz?(\b|[A-Z0-9_]*_)SECRET(_[A-Z0-9_]*|\b)\s*=\s(\'|")[^\'"]+(\'|")cg}|D]w}t|dkr|\}}}t}n|\}}}}t|ttfs|g}|fd|Dr|||fx|S)Nc:g|]}|S)search).0regexplines /srv/buildsys-work-dir/castor/build_node/builder-2/WGSG1/unpkd_srcs/cloudlinux-venv-1.0.6/venv/lib/python3.11/site-packages/dodgy/checks.py zcheck_line..@s%;;;t$$;;;)lenany isinstancelisttupleappend)r check_listmessagestupkeymsgregexpsconds` r check_liner"4sH ( ( s88q== # CgDD&) #Cgt'D%=11 iG 4;;;;7;;; < < ( OOS#J ' ' ' Orc*|drttjd}nttjd}||d5}t |cdddS#1swxYwYdS)Nz.gzrt)moderzutf-8)encoding)endswithrgzipopencodecscheck_file_contentsread)filepathfopento_checks r check_filer1Fs/ --- #... x' * * *4h"8==??33444444444444444444s!BB B cg}t|dD];\}tttfD]!}|fdt ||Dz }"<|S)N c&g|] \}}dz||fS)r )rrr line_number0s rrz'check_file_contents..Vs9C!3,r) enumeratesplit STRING_VALS LINE_VALS VAR_NAMESr") file_contentsrrrr6s @rr,r,QsH' (;(;D(A(ABB d& 9=  J  *4 < < HH  Or)r+r)re functoolsrcompile IGNORECASEallr9r:r;r"r1r,r rrrBs^  ( BJ9 : : BJ)2= 9 9     # O $ $jbj&A&AB " ABB ! MNN  ( % P   ' UVV  $444     r