HEX
Server: Apache
System: Linux 185.122.168.184.host.secureserver.net 5.14.0-570.60.1.el9_6.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Nov 5 05:00:59 EST 2025 x86_64
User: barbeatleanalyti (1024)
PHP: 8.1.33
Disabled: NONE
Upload Files
File: //var/opt/nydus/ops/cryptography/hazmat/bindings/openssl/__pycache__/binding.cpython-39.pyc
a

�,�hl�@s,ddlZddlZddlZddlZddlZddlmZddlmZddlm	Z	m
Z
ddlmZe�
ddefdefd	efd
efg�ZGdd�d�Zejed
�dd�Zejeejed�dd�Zdd�Zd eejejedd�dd�Zdd�ZGdd�d�Zdd�Zdd�Zeej�e��eej
�dS)!�N)�utils)�
InternalError)�ffi�lib)�CONDITIONAL_NAMES�_OpenSSLErrorWithText�coder�reasonZreason_textc@sfeZdZeeed�dd�Zeeed�dd�Zeed�dd	��Zeed�d
d��Z	eed�dd
��Z
dS)�
_OpenSSLError)rrr	cCs||_||_||_dS�N)�_code�_lib�_reason)�selfrrr	�r�_/opt/nydus/tmp/pip-target-wkfpz8uv/lib64/python/cryptography/hazmat/bindings/openssl/binding.py�__init__sz_OpenSSLError.__init__)rr	�returncCs||jko||jkSr)rr	)rrr	rrr�_lib_reason_matchsz_OpenSSLError._lib_reason_match�rcCs|jSr)r�rrrrr sz_OpenSSLError.codecCs|jSr)r
rrrrr$sz_OpenSSLError.libcCs|jSr)rrrrrr	(sz_OpenSSLError.reasonN)�__name__�
__module__�__qualname__�intr�boolr�propertyrrr	rrrrr
sr
rcCsBg}|��}|dkrq>|�|�}|�|�}|�t|||��q|S)Nr)Z
ERR_get_errorZERR_GET_LIBZERR_GET_REASON�appendr
)r�errorsrZerr_libZ
err_reasonrrr�_consume_errors-s

r)rrcCsVg}|D]H}t�dd�}t�|j|t|��t�|�}|�t|j|j|j	|��q|S)Nzchar[]�)
r�newrZERR_error_string_nr�len�stringrrr	)r�errors_with_text�err�bufZerr_text_reasonrrr�_errors_with_text<s
��r'cCstt|��Sr)r'r�rrrr�_consume_errors_with_textNsr))�okrrcCs0|s,|durt|�}t|�}td�|�|��dS)NaiUnknown OpenSSL error. This error is commonly encountered when another library is not cleaning up the OpenSSL error stack. If you are using cryptography with another library that uses OpenSSL try disabling it before reporting a bug. Otherwise please file an issue at https://github.com/pyca/cryptography/issues with information on how to reproduce this. ({0!r}))rr'r�format)rr*rr$rrr�_openssl_assertRs��r,cCsjt�d�}||_t�}|��D]\}}t||�s|�|��qt|�D]}||vrFt||t||��qF|S)Nr)	�types�
ModuleTypeZ
_original_lib�set�items�getattr�update�dir�setattr)rZconditional_namesZconditional_libZexcluded_names�	conditionZnames_cb�attrrrr�build_conditional_libraryfs

r7c@s�eZdZUdZdZejed<eZdZ	e
��ZdZ
ejed<dZejed<dd�Zdd	�d
d�Zedd
��Zedd��Zedd��ZdS)�Bindingz
    OpenSSL API wrapper.
    NrF�_legacy_provider�_default_providercCs|��dSr��_ensure_ffi_initializedrrrrr�szBinding.__init__rcCs�t|j|jj�|j�|jjd�|_t|j|j|jjk�|j�|jjd�|j_t|j|jj|jjk�|j�|jjd�}t|j|dk�dS)Nsbasesfips�)	r,r�#CRYPTOGRAPHY_OPENSSL_300_OR_GREATER�OSSL_PROVIDER_loadr�NULLZ_base_providerZ_fips_providerZ"EVP_default_properties_enable_fips)r�resrrr�_enable_fips�s��zBinding._enable_fipscCs0|j��|jjr,|j��}t|j|dv�dS)N)r=�)rZERR_clear_errorZ"CRYPTOGRAPHY_NEEDS_OSRANDOM_ENGINEZ Cryptography_add_osrandom_enginer,)�cls�resultrrr�_register_osrandom_engine�s

z!Binding._register_osrandom_enginecCs�|j��|js�ttt�|_d|_|��|jjr�|j�|jj	d�|_
t|j|j
|jj	k�|j�|jj	d�|_t|j|j|jj	k�Wd�n1s�0YdS)NTslegacysdefault)
�
_init_lock�_lib_loadedr7rrrFr>r?rr@r9r,r:�rDrrrr<�s$����zBinding._ensure_ffi_initializedcCs|��dSrr;rIrrr�init_static_locks�szBinding.init_static_locks)rrr�__doc__r�typing�ClassVar�__annotations__rrH�	threading�LockrGr9�Anyr:rrB�classmethodrFr<rJrrrrr8us


r8cCs$|jr |js |js t�dtj�dS)Nz�OpenSSL version 1.1.0 is no longer supported by the OpenSSL project, please upgrade. The next release of cryptography will be the last to support compiling with OpenSSL 1.1.0.)Z"CRYPTOGRAPHY_OPENSSL_LESS_THAN_111ZCRYPTOGRAPHY_IS_LIBRESSLZCRYPTOGRAPHY_IS_BORINGSSL�warnings�warnrZDeprecatedIn37r(rrr�_verify_openssl_version�s����rUcCs.t�tj�}|�d�|kr*td�||���dS)N�asciiaThe version of cryptography does not match the loaded shared object. This can happen if you have multiple copies of cryptography installed in your Python path. Please try creating a new virtual environment to resolve this issue. Loaded python version: {}, shared object version: {})rr#rZCRYPTOGRAPHY_PACKAGE_VERSION�encode�ImportErrorr+)�versionZso_package_versionrrr�_verify_package_version�s��rZ)N)rOr-rLrSZcryptographyrZcryptography.exceptionsrZ%cryptography.hazmat.bindings._opensslrrZ1cryptography.hazmat.bindings.openssl._conditionalr�
NamedTupler�bytesrr
�Listrr'r)r�Optionalr,r7r8rUrZ�__version__rJrrrr�<module>s<����J