fj.UddlZddlZddlZddlZddlZddlmZddlmZddl Z ddl Z ddl m Z ddl mZddlmZddlmZddlmZdd lmZdd lmZmZdd lmZd Zeed <ddiZ Gddej!Z"ej#degdZ$ede%defdZ&ej'GddZ(de%de%de(fdZ)de%de%fdZ*de%de%de(fdZ+dS) N)contextmanager)Path)drop_privileges)docroot)ChunkedEncodingError) disable_quota)ReadTimeoutError)gettext)utils exceptions)ALLOWED_INI_PREFIXES TIMEOUTz User-AgentzjMozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.13) Gecko/20101209 CentOS/3.6-2.el5.centos Firefox/3.6.13ceZdZdZdS)WebsiteNotRespondingc"||_||_dS)N)urldetails)selfrrs R/opt/cloudlinux/venv/lib64/python3.11/site-packages/xray/internal/phpinfo_utils.py__init__zWebsiteNotResponding.__init__%s N)__name__ __module__ __qualname__rrrrr$s#rrc tj|tdt}|n#t $rK}|jr!t|jdtrt|t|d}~wtj $r6}tj tdt|zd}~wwxYw|S)zg retry on: - ChunkedEncodingError -> sometimes error happens due to network issues/glitch F)timeoutverifyheadersr)rNzUnable to detect php version for website because it is not accessible. Try again and contact an administrator if the issue persists. Original error: %s. )requestsgetrHEADERSraise_for_statusConnectionErrorargs isinstancer rstrRequestExceptionr XRayManagerError_)rresponsees r _request_urlr/*s 0<W',g???!!#### 888 6 j,<==  "3A7777  $000) % & &),A /00 00 Os"69 CAB  C1C  Cusername document_rootc#pKd}dtjdd}||z }t|5t5||dddn #1swxYwYdddn #1swxYwY |V|dS#|wxYw)Na d|jvr d|jS||jS)Nz/opt/altzalt-php)rBrK)rrLs rget_full_php_versionz%PhpConfiguration.get_full_php_versionqs5 * * *5T355 5 :$"8:::rcd|jvrt|j|jn|jrQtjt fdtDstdS)Nz link/confc3HK|]}dz|VdS)/N) startswith).0presolveds r z9PhpConfiguration.absolute_ini_scan_dir..sF34C++A..rz$ini_scan_dir outside allowed paths: ) r@_resolve_ini_path_in_cagefsr0ospathrealpathanyr ValueError)rrUs @rabsolute_ini_scan_dirz&PhpConfiguration.absolute_ini_scan_dirvs $+ + +24=$BSTTHH(H  w''11H8L !G8GGrc|jdkS)Nzfpm-fcgi)rArJs r is_php_fpmzPhpConfiguration.is_php_fpms!Z//rN) rrrr)__annotations__propertyrKrNr]r_rrrr>r>`sMMMOOO 73777X7;3;;;; X$00X000rr>r-rCci}|dD]F}|s|d\}}|||<Gtdd|i|S)N =r0r)rIstripr>)r0r-configlinekeyvalues r_parse_configurationrjst Ft$$$$zz||  ZZ__ Ukkmms  8 8X 8 8 88rrYc tj|n#t$rYdSwxYwd|d|g} tj|dtj}n#tj$rYdSwxYw|drJKKMM M@f@@x@@@@ s %%3A##A65A6domainctjtjjt |t t |d5}|dz|z} d|z}t|}n$#t$rd|z}t|}YnwxYwdddn #1swxYwYt||j }|S)z Writes temporary phpinfo-like file to document root and executes request to website to retrieve the current php version and configuration rrQzhttp://zhttps://N) urllib3disable_warningsr InsecureRequestWarningr<rrr/rrjrl)r0ry php_info_filedomain_phpinfo_file_pathhttp_urlr- https_url configurations rget_php_configurationrs W/FGGG 40B+C+C D D / #)C<-#?  / #;;H#H--HH# / / /#%==I#I..HHH  / / / / / / / / / / / / / / / /)8=AAM s6 B#A32B#3BB#BB##B'*B'), dataclassesrXrnr5rq contextlibrpathlibrr"r{clcommon.clpwdrclcommon.cpapirrequests.exceptionsrsecureiorurllib3.exceptionsr xrayr r, xray.internalr r xray.internal.constantsr rintr`r$r+rretry_on_exceptionsr/r)r< dataclassr>rjrWrrrrrsn %%%%%%******""""""444444""""""//////++++++++888888J  :6 13455652c$6 *0*0*0*0*0*0*0*0X 93 9# 9:J 9 9 9 9#S:C9Ir