File manager - Edit - /opt/saltstack/salt/lib/python3.10/site-packages/pip/_vendor/truststore/__pycache__/_macos.cpython-310.pyc
Back
o ;jP � @ s` d dl Z d dlZd dlZd dlZd dlZd dlmZmZmZmZm Z m Z mZmZm Z d dlmZ ddlmZ e�� d Zeeee�d���Zedk rXeded � ded � ���ed kZd ededefd d�Zedd�Zedd�ZeZe Z eZ!e Z"e Z#e Z$e Z%e Z&e Z'eZ(ee'�Z)e Z*e Z+ee&�Z,ee"�Z-ee#�Z.ee$�Z/ee%�Z0e Z1eZ2ee �Z3ee �Z4ee �Z5eZ6eZ7�z*e*e-gej8_9e3ej8_:e3gej;_9e-ej;_:e+e gej<_9e.ej<_:e5e/gej=_9e+ej=_:e5egej>_9e+ej>_:e2gej?_9e4ej?_:ee.gej@_9e4ej@_:e)e)ee5�gejA_9e+ejA_:e5ee6�gejB_9e+ejB_:e5ee6�gejC_9e+ejC_:e5e_5e6e_6e+e_+dZDdZEe)gejF_9dejF_:e)gejG_9e(ejG_:e*ee!gejH_9e.ejH_:e.e!gejI_9eejI_:e.ee e!gejJ_9eejJ_:e*ee gejK_9e-ejK_:e-gejL_9e ejL_:e-gejM_9e ejM_:e*ee)�e e1gejN_9e/ejN_:e*e e1gejO_9e0ejO_:e0e gejP_9dejP_:e/gejQ_9e ejQ_:e/e gejR_9e ejR_:e,gejS_9e ejS_:e,gejT_9e.ejT_:e*�Ued�e_Ve �Ued�e_We)e_)e/e_/e.e_.e,e_,W n eX�y� ZY zedeY� ��d�dZY[Yww e�rze5ee,�gejZ_9eejZ_:W n eX�y ZY zedeY� ��d�dZY[Yww de+dej[dej[dej[fdd�Z\e\ejA_]e\ej=_]e\ej>_]e\ejB_]e\ejC_]G dd� d�Z^de_de-fd d!�Z`de_de#fd"d#�Zad$e.dedB fd%d&�Zbd'ece_ de0fd(d)�Zde jed*ejfdejgd fd+d,��Zh d7d-ejfd.ece_ d/edB ddfd0d1�Zid-ejfd2ej[ddfd3d4�Zjd-ejfd2ej[ddfd5d6�ZkdS )8� N) �CDLL�POINTER�c_bool�c_char_p�c_int32�c_long�c_uint32�c_ulong�c_void_p)�find_library� )�_set_ssl_context_verify_mode�.)� � z,Only OS X 10.8 and newer are supported, not )r � �name�macos10_16_path�returnc C sN zt dkr|}nt| �}|st�t|dd�W S ty& td| � d��d�w )z:Loads a CDLL by name, falling back to known path on 10.16+)r � T)� use_errnozThe library z failed to loadN)�_mac_version_infor �OSErrorr �ImportError)r r �path� r �Q/opt/saltstack/salt/lib/python3.10/site-packages/pip/_vendor/truststore/_macos.py� _load_cdll s �r �Securityz6/System/Library/Frameworks/Security.framework/Security�CoreFoundationzB/System/Library/Frameworks/CoreFoundation.framework/CoreFoundation� r �kCFAllocatorDefault�kCFTypeArrayCallBackszError initializing ctypes: �result�_�argsc C s� t | �dkr|S d}z=t�| d�}t�|t�tj��}t�|t j �}|du r=t�d�}t�||dt j �} | s:t d��|j}W |durGt�|� n|durRt�|� w w |du s[|dkr`d| � �}t�|��)z< Raises an error if the OSStatus value is non-zero. r N� �'Error copying C string from CFStringRef� z8SecureTransport operation returned a non-zero OSStatus: )�intr �SecCopyErrorMessageString�ctypes�castr r r �CFStringGetCStringPtr�CFConst�kCFStringEncodingUTF8�create_string_buffer�CFStringGetCStringr �value� CFRelease�ssl�SSLError)r# r$ r% Zerror_message_cfstringZerror_message_cfstring_c_void_p�message�bufferr r r �_handle_osstatus� s@ �� �� ��� r8 c @ s( e Zd ZdZed�ZdZdZdZdZ dS )r. zCoreFoundation constantsi i���i��i���i����N) �__name__� __module__�__qualname__�__doc__�CFStringEncodingr/ Z#errSecIncompleteCertRevocationCheckZerrSecHostNameMismatch�errSecCertificateExpired�errSecNotTrustedr r r r r. s r. r2 c C s t �t j| t| ��S �N)r �CFDataCreater! �len)r2 r r r �_bytes_to_cf_data_ref& s �rC c C s t �| �}t�tj|tj�}|S )zi Given a Python binary data, create a CFString. The string must be CFReleased by the caller. )r+ r r �CFStringCreateWithCStringr! r. r/ )r2 Zc_strZcf_strr r r �_bytes_to_cf_string, s �rE � cf_string_refc C sZ t �| tj�}|du r"t�d�}t �| |dtj�}|std��|j}|dur+|� d�}|S )z� Creates a Unicode string from a CFString object. Used entirely for error reporting. Yes, it annoys me quite a lot that this function is this complex. Nr&