a
    )=ic
  ã                   @   s@   d dl Z d dlZd\ZZZdd„ Zddd„Zd	d
„ Zdd„ ZdS )é    N)r   é   é   c           	      G   s  t tdd„ ttdd„ |ƒƒƒƒ}t tdd„ ttdd„ |ƒƒƒƒ}d}d}g }t}|  ¡ }|s^qü| ¡ }|tkrˆ||v rˆg }|| }t}qP|tkr´||v rª|| |krªt}n
| |¡ |tkrPt	j
d d	kràd d
d„ |D ƒ¡}qüd ¡  dd„ |D ƒ¡}qüqP||fS )Nc                 S   s   | d | d fS ©Nr   r   © ©Úxr   r   úc/home/droni/.local/share/virtualenvs/DPS-5Je3_V2c/lib/python3.9/site-packages/pyasn1_modules/pem.pyÚ<lambda>   ó    z'readPemBlocksFromFile.<locals>.<lambda>c                 S   s   | d S )Nr   r   ©Úyr   r   r   r	      r
   c                 S   s   | d | d fS r   r   r   r   r   r   r	      r
   c                 S   s   | d S )Nr   r   r   r   r   r   r	      r
   éÿÿÿÿÚ r   r   c                 S   s   g | ]}t  |¡‘qS r   )Úbase64Ú	b64decode©Ú.0r   r   r   r   Ú
<listcomp>*   r
   z)readPemBlocksFromFile.<locals>.<listcomp>c                 S   s   g | ]}t  | ¡ ¡‘qS r   )r   r   Úencoder   r   r   r   r   ,   r
   )ÚdictÚmapÚ	enumerateÚstSpamÚreadlineÚstripÚstHamÚstDumpÚappendÚsysÚversion_infoÚjoinr   )	ÚfileObjÚmarkersZstartMarkersZstopMarkersÚidxÚ	substrateZ	certLinesÚstateZcertLiner   r   r   ÚreadPemBlocksFromFile   s<    
ÿ
ÿ
r&   ú-----BEGIN CERTIFICATE-----ú-----END CERTIFICATE-----c                 C   s   t | ||fƒ\}}|S ©N)r&   )r!   ZstartMarkerZ	endMarkerr#   r$   r   r   r   ÚreadPemFromFile2   s    r*   c                 C   s*   t jd dkrt | ¡S t |  ¡ ¡S d S )Nr   r   )r   r   r   r   r   )Útextr   r   r   ÚreadBase64fromText9   s    
r,   c                 C   s   t |  ¡ ƒS r)   )r,   Úread)r!   r   r   r   ÚreadBase64FromFile@   s    r.   )r'   r(   )	r   r   r   r   r   r&   r*   r,   r.   r   r   r   r   Ú<module>   s   
$  þ
