%PDF- %PDF-
| Direktori : /lib/python3/dist-packages/duplicity/__pycache__/ |
| Current File : //lib/python3/dist-packages/duplicity/__pycache__/gpg.cpython-312.pyc |
�
�2e�C � �� � d Z ddlZddlZddlZddlZddlZddlmZ ddlmZ ddlm Z ddlm
Z
ddlmZ ddlm
Z
dd lmZ d
Z G d� de� Z G d
� de� Z G d� de� Zdd�Zdd�Zdd�Zdd�Zy)z�
duplicity's gpg interface, builds upon Frank Tobin's GnuPGInterface
which is now patched with some code for iterative threaded execution
see duplicity's README for details
� N)�config)�gpginterface)�log)�tempdir)�util)�sha1)�md5i c � � e Zd ZdZy)�GPGErrorz!
Indicate some GPG Error
N)�__name__�
__module__�__qualname__�__doc__� � �//usr/lib/python3/dist-packages/duplicity/gpg.pyr r . s � �� r r c �F � e Zd ZdZdd�Zej Z ed� Zd� Z y)�
GPGProfilezF
Just hold some GPG settings, avoid passing tons of arguments
Nc �8 � |�t |t � sJ �|| _ || _ || _ d| _ |�t |t � sJ �|| _ ng | _ |�t |t � sJ �|| _ ng | _ | j t j � | _ y)a>
Set all data with initializer
passphrase is the passphrase. If it is None (not ""), assume
it hasn't been set. sign_key can be blank if no signing is
indicated, and recipients should be a list of keys. For all
keys, the format should be an hex key like 'AA0E73D2'.
N)
�
isinstance�str�
passphrase�signing_passphrase�sign_key�encrypt_secring�list�
recipients�hidden_recipients�get_gpg_versionr �
gpg_binary�gpg_version)�selfr r r r s r �__init__zGPGProfile.__init__; s� � � �!�Z�
�C�%@�@�@�$���",��� ��
�#����!��j�$�/�/�/�(�D�O� �D�O��(��/��6�6�6�%6�D�"�%'�D�"��/�/��0A�0A�B��r sU ^gpg.*\(GnuPG(?:/MacGPG2)?\) (?P<maj>[0-9]+)\.(?P<min>[0-9]+)\.(?P<bug>[0-9]+)(-.+)?$c �b � t j � }|�||_ t j rHt j j � D ]'