HEX
Server: Apache
System: Linux zacp120.webway.host 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP Thu Apr 17 19:10:24 UTC 2025 x86_64
User: govancoz (1003)
PHP: 8.3.26
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: //usr/local/lib/python3.10/test/__pycache__/pythoninfo.cpython-310.pyc
o

�i^�@s�dZddlmZddlZddlZddlZddlZddlZejdkZ	dd�Z
Gdd�d�Zdd	�d
d�Zdd
�Z
dd	�dd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zd d!�Zd"d#�Zd$d%�Zd&d'�Zd(d)�Zd*d+�Zd,d-�Zd.d/�Zd0d1�Zd2d3�Z d4d5�Z!d6d7�Z"d8d9�Z#d:d;�Z$d<d=�Z%d>d?�Z&d@dA�Z'dBdC�Z(dDdE�Z)dFdG�Z*dHdI�Z+dJdK�Z,dQdLdM�Z-dNdO�Z.e/dPkr�e.�dSdS)RzK
Collect various information about Python to help debugging test failures.
�)�print_functionN�win32cCs*|durdSt|�}t�dd|�}|��S)Nz\s+� )�str�re�sub�strip)�text�r
�,/usr/local/lib/python3.10/test/pythoninfo.py�normalize_texts
rc@s$eZdZdd�Zdd�Zdd�ZdS)�
PythonInfocCs
i|_dS�N)�info��selfr
r
r�__init__s
zPythonInfo.__init__cCs\||jvrtd|��|durdSt|t�s't|t�st|�}|��}|s'dS||j|<dS)Nzduplicate key: %r)r�
ValueError�
isinstance�intrr)r�key�valuer
r
r�adds


zPythonInfo.addcCsdd�|j��D�S)zU
        Get information as a key:value dictionary where values are strings.
        cSsi|]	\}}|t|��qSr
)r)�.0rrr
r
r�
<dictcomp>1�z(PythonInfo.get_infos.<locals>.<dictcomp>)r�itemsrr
r
r�	get_infos-szPythonInfo.get_infosN)�__name__�
__module__�__qualname__rrrr
r
r
rr
sr
��	formattercCsH|D]}t||d�}|durq||}|dur|||�}|||�qdSr)�getattr)�info_add�objZname_fmt�
attributesr"�attrr�namer
r
r�copy_attributes4s
�r)cCs2zt||�}Wn
tyYdSw|||�dSr�r#�AttributeError)r$r(�modZ	attr_namerr
r
r�	copy_attr?s�r-cCsHzt||�}Wn
tyYdSw|�}|dur||�}|||�dSrr*)r$r(r,�	func_namer"�funcrr
r
r�	call_funcGs�r0c	Cs�d}t|td|�t|dtd�t|dtd�t��}ttd�r(d|t��f}|d	|�d
D]*}tt|�}|dur;q/t|dd�}|sDq/t|dd�}|rRd||f}|d
||�q/ttd�}|rdd}nd}|d|�ttd�}|rud}nd}|d|�dS)N)�
_framework�abiflags�api_version�builtin_module_names�	byteorder�dont_write_bytecode�
executable�flags�
float_info�float_repr_style�	hash_info�
hexversion�implementation�int_info�maxsize�
maxunicode�path�platform�
platlibdir�prefix�thread_info�version�version_info�winverzsys.%szsys.androidapilevel�getandroidapilevelzsys.windowsversion�getwindowsversion�getfilesystemencodeerrorsz%s/%szsys.filesystem_encoding)�stdin�stdout�stderr�encoding�errorszsys.%s.encodingZgettotalrefcountz$Yes (sys.gettotalrefcount() present)z#No (sys.gettotalrefcount() missing)zbuild.Py_DEBUGZ
getobjectszYes (sys.getobjects() present)zNo (sys.getobjects() missing)zbuild.Py_TRACE_REFS)r)�sysr0�getfilesystemencoding�hasattrrKr#)	r$r&rOr(�streamrP�Py_DEBUGr	Z
Py_TRACE_REFSr
r
r�collect_sysRs:





rVcCspddl}|��}d�tt|��}|d|�|d|���|d|jdd��d|����}|r6|d	|�dSdS)
Nrrzplatform.architecturezplatform.python_implementationzplatform.platformT)Zaliasedz%s %szplatform.libc_ver)rBZarchitecture�join�filter�boolZpython_implementation�libc_verr)r$rBZarchrZr
r
r�collect_platform�s
�
��r[cCsddl}|d|�d��dS)Nrzlocale.encodingF)�locale�getpreferredencoding)r$r\r
r
r�collect_locale�sr^cCs$|dt�d��|dt�d��dS)Nzbuiltins.float.float_format�floatzbuiltins.float.double_formatZdouble)r_�
__getformat__)r$r
r
r�collect_builtins�srac
Cs�ddl}t|d�rNz*z|�d|j�d}Wnty+}z
d|}WYd}~nd}~ww|d|�WdStyM}z|jtjkrB�WYd}~dSd}~wwdS)Nr�	getrandom�zready (initialized)znot seeded yet (%s)zos.getrandom)�osrSrb�
GRND_NONBLOCK�BlockingIOError�OSError�errnoZENOSYS)r$rd�state�excr
r
r�collect_urandom�s$
������rkcCsddl}dd�}d}t||d||d�dD]}t|d|||�qdd	�}t|d
|d|d�t|d�rHz|��}Wn	tyBYnw|d
|�td�}|j��D]"\}}	|�	�}
|
|vsl|
�
d�sl|
�
d�rs|
�d�rs|d||	�qQt|d�r�|�d�}|�|�|dd|�dSdS)NrcSs"|dvrttdd�|D���S|S)N)�supports_follow_symlinks�supports_fd�supports_effective_idscss�|]}|jVqdSr)r)rr/r
r
r�	<genexpr>�s�z2collect_os.<locals>.format_attr.<locals>.<genexpr>)r�sorted�r'rr
r
r�format_attr�szcollect_os.<locals>.format_attr)r(�supports_bytes_environrnrmrlzos.%sr!)
�	cpu_count�getcwd�getegid�geteuid�getgid�
getloadavg�	getresgid�	getresuid�getuid�unamecSsd�tt|��S)N�, )rW�mapr)�groupsr
r
r�
format_groups�sz!collect_os.<locals>.format_groupszos.getgroups�	getgroups�getloginzos.login)>�APPDATAZARZ	ARCHFLAGSZARFLAGSZAUDIODEV�CC�CFLAGS�COLUMNSZCOMPUTERNAMEZCOMSPECZCPPZCPPFLAGSZDISPLAYZDISTUTILS_DEBUGZDISTUTILS_USE_SDKZDYLD_LIBRARY_PATHZENSUREPIP_OPTIONSZHISTORY_FILE�HOME�	HOMEDRIVE�HOMEPATHZIDLESTARTUP�LANGZLDFLAGSZLDSHAREDZLD_LIBRARY_PATH�LINESZMACOSX_DEPLOYMENT_TARGETZMAILCAPSZ	MAKEFLAGSZMIXERDEVZMSSDK�PATH�PATHEXTZPIP_CONFIG_FILEZPLATZPOSIXLY_CORRECTZ
PY_SAX_PARSERZProgramFileszProgramFiles(x86)ZRUNNING_ON_VALGRINDZ
SDK_TOOLS_BINZSERVER_SOFTWARE�SHELL�SOURCE_DATE_EPOCHZ
SYSTEMROOT�TEMPZTERMZTILE_LIBRARYZTIX_LIBRARY�TMP�TMPDIRZTRAVISZTZ�USERPROFILEZVIRTUAL_ENVZWAYLAND_DISPLAYZWINDIRZ_PYTHON_HOST_PLATFORMZ_PYTHON_PROJECT_BASEZ_PYTHON_SYSCONFIGDATA_NAME�__PYVENV_LAUNCHER__)ZPYTHON�LC_ZVSZ	COMNTOOLSzos.environ[%s]�umaskzos.umaskz0o%03o)
rdr)r0rSr�rg�	frozenset�environr�upper�
startswith�endswithr�)r$rdrrr&r/r�ZloginZENV_VARSr(rr}�maskr
r
r�
collect_os�s@
�
@����


�r�cCs�zddl}Wn
tyYdSwddl}|��}z|�|�}Wnty+d}Ynw|d||dur6|nd�|dur?dSt|d�r[|�|j|j	�}d�
tt|��}|d|�dSdS)Nrzpwd.getpwuid(%s)z
<KeyError>�getgrouplistr~zos.getgrouplist)
�pwd�ImportErrorrdr|�getpwuid�KeyErrorrSr��pw_nameZpw_gidrWrr)r$r�rd�uid�entryr�r
r
r�collect_pwdFs,���
�r�cCs�zddl}Wn
tyYdSwdd�}d}t||d||d�t|d�sAt|dd	�}d
|vr6|dd
�dSd|vrC|dd�dSdSdS)
NrcSst|t�r	d|S|S)Nz%#x)rrrqr
r
rrrg�
z%collect_readline.<locals>.format_attr)Z_READLINE_VERSIONZ_READLINE_RUNTIME_VERSION�_READLINE_LIBRARY_VERSIONzreadline.%sr!r��__doc__�zlibedit readlinezreadline.libraryzGNU readline)�readliner�r)rSr#)r$r�rrr&�docr
r
r�collect_readlineas$�
�
�r�cCsnddl}z|jgd�|j|jdd�}|��d}|jrWdSWn
ty)YdSw|��d}|d|�dS)Nr)Zgdbz-nx�	--versionT�rMrN�universal_newlinesZgdb_version)�
subprocess�Popen�PIPE�communicate�
returncoderg�
splitlines)r$r��procrFr
r
r�collect_gdb~s 
���r�cCsvzddl}Wn	tyYn
wd}t||d|�zddl}Wn
ty)YdSw|��}|�dd�}|d|�dS)Nr)Z
TK_VERSIONZTCL_VERSIONz
tkinter.%sr�
patchlevelztkinter.info_patchlevel)�_tkinterr�r)�tkinterZTcl�call)r$r�r&r�Ztclr�r
r
r�collect_tkinter�s��r�c	Cs�ddl}|d|���d}t||d|�t|d�rLdD]2}ztjdd��
|�|�}Wd�n1s4wYWn	tyCYqw|d	||�qdSdS)
Nrz	time.time)�altzone�daylight�timezone�tznameztime.%s�get_clock_info)�clock�	monotonic�perf_counter�process_time�thread_time�timeT)�recordztime.get_clock_info(%s))r�r)rS�warnings�catch_warningsr�r)r$r�r&r�Z
clock_infor
r
r�collect_time�s"
����r�cCs6zddl}Wn
tyYdSw|d|j���dS)Nrzdatetime.datetime.now)�datetimer�Znow)r$r�r
r
r�collect_datetime�s�r�cCs�trdSddl}dD]}|�|�}|dkr|sq
t|�}|d||�q
|�d�}|o.d|v}|r4d}nd}|d	|�d
D]}|�|�}|rId}nd}|d
|��|�q=dS)Nr)ZABIFLAGS�ANDROID_API_LEVELr�ZCCSHAREDr�ZCFLAGSFORSHAREDZCONFIG_ARGSZ
HOST_GNU_TYPEZMACHDEPZ	MULTIARCHZOPT�	PY_CFLAGSZPY_CFLAGS_NODISTZPY_CORE_LDFLAGSZ
PY_LDFLAGSZPY_LDFLAGS_NODISTZPY_STDMODULE_CFLAGSrUZPy_ENABLE_SHAREDr�ZSOABIrDr�z
sysconfig[%s]r�z-DNDEBUGz!ignore assertions (macro defined)z$build assertions (macro not defined)zbuild.NDEBUG)ZWITH_DOC_STRINGSZWITH_DTRACEZWITH_FREELISTSZ
WITH_PYMALLOCZ
WITH_VALGRINDZYesZNozbuild.)�
MS_WINDOWS�	sysconfig�get_config_varr)r$r�r(rr�ZNDEBUGr	r
r
r�collect_sysconfig�s,



�r�c	Cs,ddl}zddl}Wn
tyYdSwzddl}Wnty&d}Ynwdd�}d}t||d||d�d|�|j�fd|��fd	|��ffD]\}}d
}t||d|�d�|�qId
dg}|durwt	|d�rw|�
�}	|�|	d|	df�|D]}z|j|}
Wn	t
y�Yqyw|d||
�qydS)NrcSs|�d�r	d|S|S)NZOP_z%#8x�r�rqr
r
rrrr�z collect_ssl.<locals>.format_attr)ZOPENSSL_VERSIONZOPENSSL_VERSION_INFOZHAS_SNIZOP_ALLZ
OP_NO_TLSv1_1zssl.%sr!�
SSLContextZdefault_https_contextZstdlib_context)Zminimum_versionZmaximum_version�protocol�optionsZverify_modezssl.z.%sZOPENSSL_CONFZ
SSLKEYLOGFILE�get_default_verify_paths�zssl.environ[%s])rd�sslr��_sslr)r�ZPROTOCOL_TLS_CLIENTZ_create_default_https_contextZ_create_stdlib_contextrSr��extendr�r�)r$rdr�r�rrr&r(�ctxZ	env_names�partsrr
r
r�collect_ssls@��

���r�cCs8zddl}Wn
tyYdSw|��}|d|�dS)Nrzsocket.hostname)�socketr��gethostname)r$r��hostnamer
r
r�collect_socket<s�r�cC�8zddl}Wn
tyYdSwd}t||d|�dS)Nr)rFZsqlite_versionz
sqlite3.%s)�sqlite3r�r))r$r�r&r
r
r�collect_sqliteF��r�cCr�)Nr)�ZLIB_VERSION�ZLIB_RUNTIME_VERSIONzzlib.%s)�zlibr�r))r$r�r&r
r
r�collect_zlibPr�r�cCs<zddlm}Wn
tyYdSwd}t||d|�dS)Nr)�expat)Z
EXPAT_VERSIONzexpat.%s)Zxml.parsersr�r�r))r$r�r&r
r
r�
collect_expatZs�r�cCr�)Nr)Z__libmpdec_version__z_decimal.%s)�_decimalr�r))r$r�r&r
r
r�collect_decimaldr�r�cCs4zddl}Wn
tyYdSwt|d|d�dS)Nrzpymem.allocatorZpymem_getallocatorsname)�	_testcapir�r0)r$r�r
r
r�collect_testcapins�r�cCsrzddl}Wn
tyYdSwdd�t|�D�}|D]}t||�}|�|�}|d||�qt|d|d�dS)NrcS�g|]	}|�d�r|�qS)ZRLIMIT_r�)rr'r
r
r�
<listcomp>}rz$collect_resource.<locals>.<listcomp>zresource.%szresource.pagesizeZgetpagesize)�resourcer��dirr#Z	getrlimitr0)r$r�Zlimitsr(rrr
r
r�collect_resourcews�

r�cCsJzddlm}Wn
tyYdSwdd�t|�D�}t||d|�dS)Nr)�test_socketcSr�)ZHAVE_r�)rr(r
r
rr��s
�z'collect_test_socket.<locals>.<listcomp>ztest_socket.%s)�testr�r�r�r))r$r�r&r
r
r�collect_test_socket�s�r�cCs�zddlm}Wn
tyYdSwd}t||d|�t|d|d�t|d|d�|d	|jd
d��|d|jd
d
��|d|jd
d��dS)Nr)�support)ZIPV6_ENABLEDztest_support.%sztest_support._is_gui_availableZ_is_gui_availablez test_support.python_is_optimizedZpython_is_optimizedz*test_support.check_sanitizer(address=True)T)�addressz)test_support.check_sanitizer(memory=True))Zmemoryz%test_support.check_sanitizer(ub=True))Zub)r�r�r�r)r0Zcheck_sanitizer)r$r�r&r
r
r�collect_test_support�s$�
�
�
�r�c	Cs�ddl}ddl}|�d�}|sdSzddl}|�|�}Wn
ty)|��}Ynw|�d�z
|j||j|j	dd�}Wn
t
yFYdSw|��d}|jrRdS|�
�d}t|�}|d|�dS)Nrr�r�Tr�z
CC.version)r�r�r��shlex�splitr��appendr�r��STDOUTrgr�r�r�r)	r$r�r�r�r��argsr�rMr	r
r
r�
collect_cc�s6
�

��rcCs@zddlm}Wn
tyYdSw|dd�tt|���dS)Nr)�
_GDBM_VERSIONzgdbm.GDBM_VERSION�.)�_gdbmrr�rWrr)r$rr
r
r�collect_gdbm�s�rcCsnzddlm}Wn
tyYdSw|�}t|�D]}||}t|�D]}|d||ft||��q$qdS)Nr)�get_configsz%s[%s])Z_testinternalcapir	r�rp�repr)r$r	Zall_configsZconfig_typeZconfigrr
r
r�collect_get_config�s���rcCsddl}t||dd�dS)Nrz
subprocess.%s)�_USE_POSIX_SPAWN)r�r))r$r�r
r
r�collect_subprocess�sr
c
	Cs�zddl}Wn
tyYdSwt|d�sdS|�d�}|j}z|j}Wnty0d}Ynw||_d|_t	|��}|d|�zddl
}|�tj
�}|d|�Wnttfy]Ynwddl}z|jgd�|j|jd	d
d�}	|	��\}
}|	jr|d}
Wn	ty�Yn3w|
��D]-}|��}|�d
�r�|�d
���}|r�|d|�q�|�d�r�|�d���}|r�|d|�q�z|jdgd
|j|jd
d�}	|	��d}
|	jr�d}
Wn
ty�YdSw|
��}
|
��d}|r�|d|�dSdS)Nr�WinDLL�ntdllz<function not available>r
zwindows.RtlAreLongPathsEnabledzwindows.dll_path)Zwmicrd�getzCaption,Versionz/valueZoemT)rMrNrOr	r�zCaption=zwindows.version_captionzVersion=zwindows.version�ver)�shellrMrNr	zwindows.ver)�ctypesr�rSrZc_ubyte�RtlAreLongPathsEnabledr+Zrestype�argtypesrY�_winapiZGetModuleFileNamerQZ	dllhandler�r�r�r�r�rgr�rr��removeprefix)
r$rrZBOOLEANr�resrZdll_pathr�r��outputrN�liner
r
r�collect_windows�s��


�

�
���

�

�
����rcCs�zddl}Wntyd}Ynw|durt|d|d�z)tddd��}|����}Wd�n1s5wY|rD|d|�WdSWdStyPYdSw)Nrzfips.openssl_fips_modeZ
get_fips_modez/proc/sys/crypto/fips_enabledzutf-8)rOzfips.linux_crypto_fips_enabled)�_hashlibr�r0�openr��rstriprg)r$r�fprr
r
r�collect_fips-s"����r cCs�d}|j}ttttttttt	t
ttt
ttttttttttttttttfD]/}z||�Wq$tySd}td|j t!j"d�t#j$t!j"d�tt!j"d�t!j"�%�Yq$w|S)NFTzERROR: %s() failed��file)&rrkrarr�r�r�r r�rrr^r�r[r�r�r�r�r�r�r
rVr�r�r�r�rr�r�r��	Exception�printrrQrN�	traceback�	print_exc�flush)r�errorr$Zcollect_funcr
r
r�collect_info@sX�%
��r)cCsjd}t|�tdt|��t�|��}t|���}|D]\}}|�dd�}td||f�qt�dS)NzPython debug information�=�
rz%s: %s)r$�lenrrpr�replace)rr"�titleZinfosrrr
r
r�	dump_infovs
r/cCs:t�}t|�}t|�|rtdtjd�t�d�dSdS)Nz"Collection failed: exit with errorr!rc)r
r)r/r$rQrN�exit)rr(r
r
r�main�s�r1�__main__r)0r�Z
__future__rrhrrQr%r�rBr�rr
r)r-r0rVr[r^rarkr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrrr
rr r)r/r1rr
r
r
r�<module>sb
B	>5




	#	H
6

�