관리-도구
편집 파일: low_level.cpython-311.pyc
� �܋f\? � �P � d Z ddlmZ ddlZddlZddlZddlZddlZddlZddl Z ddl Z ddlZddlm Z mZmZmZmZmZmZmZmZmZ ej dej � � Zd<d�Zd=d�Zd>d�Zd?d�Zd@d�Z dAdBd�ZdCd"�Z dDd&�Z!dDd'�Z"dEd)�Z#dFd/�Z$dGd1�Z%d2d3d4d5d6d7�Z&dHd9�Z' G d:� d;� � Z(dS )Ia� Low-level helpers for the SecureTransport bindings. These are Python functions that are not directly related to the high-level APIs but are necessary to get them to work. They include a whole bunch of low-level CoreFoundation messing about and memory management. The concerns in this module are almost entirely about trying to avoid memory leaks and providing appropriate and useful assistance to the higher-level code. � )�annotationsN� ) �CFArray�CFConst�CFData�CFDictionary�CFMutableArray�CFString� CFTypeRef�CoreFoundation�SecKeychainRef�Securitys; -----BEGIN CERTIFICATE----- (.*?) -----END CERTIFICATE-----� bytestring�bytes�returnr c �\ � t j t j | t | � � � � S )zv Given a bytestring, create a CFData object from it. This CFData object must be CFReleased by the caller. )r �CFDataCreate�kCFAllocatorDefault�len)r s �{/builddir/build/BUILD/cloudlinux-venv-1.0.6/venv/lib/python3.11/site-packages/urllib3/contrib/_securetransport/low_level.py�_cf_data_from_bytesr ) s) � � �&��*�J��J���� � � �tuples�#list[tuple[typing.Any, typing.Any]]r c � � t | � � }d� | D � � }d� | D � � }t j |z |� }t j |z |� }t j t j |||t j t j � � S )zK Given a list of Python tuples, create an associated CFDictionary. c 3 �&