Repository URL to install this package:
| 
      
        
        
        Version: 
        
         
          
          5.2.8-5.2  ▾
        
         | 
| 
    
    python3-dmapi-el9
  
    /
        
    usr
  
        /
        
    lib
  
        /
        
    python3.9
  
        /
        
    site-packages
  
        /
        
    dmapi
  
        /
        
    __pycache__
  
        /
        crypto.cpython-39.pyc
   | 
|---|
a
    [r`e«0  ã                   @   sè  d Z ddlmZ ddlZddlZddlZddlmZ ddlm	Z	 ddl
mZ ddlm
Z
 ddlmZ dd	lmZ dd
lmZ ddlmZ ddlmZ dd
lmZ ddlZddlZddlZddlmZ ddlmZ ddlmZ ddlm Z m!Z! ddlm"Z" e #e$¡Z%ej&j'Z'dFddZ(dGddZ)dHddZ*dIddZ+dJddZ,dd Z-dd  Z.d!d" Z/dKd$d%Z0d&d' Z1d(d) Z2d*d+ Z3d,d- Z4d.d/ Z5d0d1 Z6d2d3 Z7d4d5 Z8d6d7 Z9dLd8d9Z:dMd:d;Z;d<d= Z<d>d? Z=d@dA Z>dNdBdCZ?dDdE Z@dS )OzzWrappers around standard crypto data elements.
Includes root and intermediate CAs, SSH key_pairs and x509 certificates.
é    )Úabsolute_importN)Ú
exceptions)Úbackends)Úpadding)Úhashes)Ú
serialization)Úx509)Úprocessutils)Úlog)Úexcutils)Ú	fileutils)Úcontext)Údb)Ú	exception)Ú_Ú_LE)Úutilsc                 C   s(   t jjr | r tj t jjd| ¡S t jjS )NZprojects)ÚCONFÚcryptoÚuse_project_caÚosÚpathÚjoinÚca_path©Ú
project_id© r   ú0/usr/lib/python3.9/site-packages/dmapi/crypto.pyÚ	ca_folder*   s    r   c                 C   s   t j t| tjj¡S ©N)r   r   r   r   r   r   Zca_filer   r   r   r   r   0   s    r   c                 C   s   t j t| tjj¡S r   )r   r   r   r   r   r   Zkey_filer   r   r   r   Úkey_path4   s    r    c                 C   s   t j t| tjj¡S r   )r   r   r   r   r   r   Úcrl_filer   r   r   r   Úcrl_path8   s    r"   c                 C   sb   t jjsd } t| }tj |¡s,tj| dt	|d}| 
¡ W  d    S 1 sT0    Y  d S )N©ZprojectÚr)r   r   r   r   r   r   Úexistsr   ZCryptoCAFileNotFoundÚopenÚread)r   Zca_file_pathZcafiler   r   r   Úfetch_ca<