File: //usr/share/crypto-policies/python/policygenerators/__pycache__/bind.cpython-312.pyc
�
��i�
� �J � d dl Z d dlmZmZ d dlmZ ddlmZ G d� de� Zy)� N)�CalledProcessError�check_output)�mkstemp� )�ConfigGeneratorc
�Z � e Zd ZdZdZddddddd d
dd� Zd
dddd�Zed� � Zed� � Z y)�
BindGenerator�bindz>systemctl try-reload-or-restart bind.service 2>/dev/null || :
)�DSA�NSEC3DSA)�RSASHA1�NSEC3RSASHA1)� RSASHA256)� RSASHA512)�ECCGOST)�ECDSAP256SHA256)�ECDSAP384SHA384)�ED25519)�ED448) zDSA-SHA1zRSA-SHA1zRSA-SHA2-256zRSA-SHA2-512�GOSTR341001�ECDSA-SHA2-256�ECDSA-SHA2-384z
EDDSA-ED25519zEDDSA-ED448zSHA-1zSHA-256zSHA-384�GOST)�SHA1zSHA2-256zSHA2-384�GOSTR94c � � |j ddh� }|j }d}|dz
}|dz
}|d D ] } | j | D ]
}||� d�z
}� �! d|d vrd |d
v r|dz
}d|d vrd
|d
v r|dz
}|dz
}|dz
}|d D ] } || j | � d�z
}� |dz
}|S # t $ r Y ��w xY w# t $ r Y �<w xY w)N�dnssecr
� zdisable-algorithms "." {
zRSAMD5;
�signz;
r � SECP256R1�groupzECDSAP256SHA256;
r � SECP384R1zECDSAP384SHA384;
z};
zdisable-ds-digests "." {
�hash)�scoped�disabled�sign_not_map�KeyError�hash_not_map)�cls�unscoped_policy�policy�ip�s�i�
disabled_signs �:/usr/share/crypto-policies/python/policygenerators/bind.py�generate_configzBindGenerator.generate_config&