MOON
Server: Apache
System: Linux s5.yayogua.com.py 6.12.0-124.55.3.el10_1.x86_64 #1 SMP PREEMPT_DYNAMIC Thu May 7 16:54:02 EDT 2026 x86_64
User: sanbercountryclu (1012)
PHP: 8.2.32
Disabled: NONE
Upload Files
File: //usr/share/crypto-policies/python/__pycache__/build-crypto-policies.cpython-312.pyc
�

��i.���ddlZddlZddlZddlZddlZddlZddlZdZd�e_d�Z	d�Z
d�Zdd�Zd�Z
d	�Zed
k(re�yy)�Nzreload-cmds.shc�x�|j�dt|�ddj�t|�ddz�d�S)Nz: ��
)�__name__�str�upper)�msg�category�	_unused_a�_unused_kwas    �:/usr/share/crypto-policies/python/build-crypto-policies.py�<lambda>rs<�������C��H�R�a�L�.�.�0�3�s�8�A�B�<�?�@��C�c�:�t|dtji|��y)N�file)�print�sys�stderr)�args�kwargss  r
�eprintrs��	�4�+�c�j�j�+�F�+rc�l�tjd��}|jddd��|jddd��|jd	td
d��|jd
dd��|jddd��|jdd��|jdd��|j	�S)zParse the command lineF)�allow_abbrevz--flat�
store_truez1put all the generated files in a single directory)�action�helpz--testz7compare the generated config file with the existing onez--policy�POLICYz"generate the specified policy only)�type�metavarrz--reloadcmdszDalso save reload cmds into reload-cmds.sh script in output directoryz--strictzfail on warnings�	policydirz5a directory with base policy definition files (*.pol))r�	outputdirz.a target directory with generated config files)�argparse�ArgumentParser�add_argumentr�
parse_args)�parsers r
r%r%s���
�
$�
$�%�
8�F�
�����5��6������5��6����
��h�A��C�
����|�N��O����
�<�/��1�
����'��(�����M��O�����rc��|jr1tjj|j|�d|�d��}n�tjj|j|�}tjj|�s	tj|�tjj||dz�}|jr�	t|d��5}|j�}ddd�|k7r]td|�d|�d	��d
�}tj||�||�||dz��}	tjj!|	�yy
t%d|�d|���t|dd��5}|j'|�ddd�t%�y
#t$rtd|���YywxYw#1swY��xYw#t"$rY�xt$rtd|���YywxYw#1swYt%�y
xYw)N�-z.txtz#Cannot create directory for policy F�utf-8)�encodingzConfig for z for policy z differs from the existing one:c�P�|jd�D�cgc]}|dz��	c}Scc}w)Nr)�split)�s�ls  r
�lineszsave_config.<locals>.linesJs&��./�g�g�d�m�<�m��A��H�m�<�<��<s�#z.new)�fromfile�tofileTzError reading generated file zSaving config for �w��moder*)�flat�os�path�joinr!�isdir�mkdir�OSErrorr�test�open�read�difflib�unified_diffrr�
writelines�FileNotFoundErrorr�write)
�cmdline�policy_name�config_name�configr7�dirpath�f�
old_configr/�diffs
          r
�save_configrL4s����|�|��w�w�|�|�G�-�-�*�m�1�[�M��>�@���'�'�,�,�w�0�0�+�>���w�w�}�}�W�%�
�����!��w�w�|�|�G�[�6�%9�:���|�|�	��d�W�-���V�V�X�
�.��V�#���[�M��k�]�K8�8�9�=��+�+�E�*�,=�u�V�}�59�37�&�=�B���
�
�%�%�d�+���
��{�m�<��}�
E�F�	
�d��w�	/�1�	�����
0�	�G���?�
��<�[�M�J�K��
��.�-��!�	���	��2�4�&�9�:��	��

0�	�G��sO�F�

G�F7�+A)G�5G*�F4�3F4�7G�<G�	G'�G'�&G'�*G=c��d}|�g}	tj|g|��d|ji�}t
t�D�cgc]	}d|vs�|��}}|D]�}tj|}|�}	|	j|�}
|dk(s|	j|
�r0	dj|g|��}t|||	j|
�sd}�tt	d|	jz�d
}��|S#t$r!}t	dt|�z�Yd}~yd}~wwxYwcc}w#t$r(t	d	|	jz�t	d
�d}Y��wxYw)Nrr zError: r�	Generator�EMPTY�:�zError saving config for zKeeping original configuration�zError testing config for �)�cryptopolicies�UnscopedCryptoPolicyr �
ValueErrorrr�dir�policygenerators�__dict__�generate_config�test_configr8rL�CONFIG_NAMEr;)rDrE�subpolicy_names�err�ucp�e�g�
generators�cls�genrG�names            r
�build_policyrf_sZ��
�C�������1�1�+�O�3B�O�<C�<M�<M�O��!�!1�2�G�2��k�Q�6F�!�2�J�G�
���'�'��*���e���$�$�S�)���'�!�S�_�_�V�%<�
��x�x�� ?�� ?�@��"�7�D�#�/�/�6�J��C��
�.����@�A��C�!�"�J��/���y�3�q�6�!�"�����H���
��1�C�O�O�C�D��7�8���
�s4�#C �	D
�D
�.D� 	D
�)D�D
�.E�Ec��d}tt�D�cgc]	}d|vs�|��}}tjj	|j
t�}	t|dd��5}|D]0}tj|}|j|j��2	ddd�|Scc}w#1swY|SxYw#t$rtd�d}Y|SwxYw)NrrNr2r)r3zError saving reload cmds�)
rWrXr6r7r8r!�RELOAD_CMD_NAMEr=rYrC�
RELOAD_CMDr;r)rDr^rarbr7rIrcs       r
�save_reload_cmdsrk�s���
�C� �!1�2�G�2��k�Q�6F�!�2�J�G�
�7�7�<�<��)�)�?�;�D��
�$�S�7�
3�q���&�/�/��2��������'� �4��J��H�4��J�����)�*����J��s:�	B"�B"�B4�!6B'�B4�'B1�,B4�1B4�4C�
Cc���t�}d}|jrtjd�|jrK|jj�j
d�D�cgc]}|s�|��	}}|^}}t|||�}n�tj|j�5}|D]s}|jjd�r�|jd��s�2tjj|j�\}}|dk(s�dt||�}|s�snddd�|s|j rt#|�}t%j&|�ycc}w#1swY�=xYw)	z!The actual command implementationr�errorrP�.F)�follow_symlinksz.polN)r%�strict�warnings�filterwarnings�policyrr,rfr6�scandirr re�
startswith�is_filer7�splitext�
reloadcmdsrkr�exit)	rDr^�n�namesrEr]�sd�i�exts	         r
�mainr�s���l�G�
�C��~�~�����(��~�~�#�N�N�0�0�2�8�8��=�C�=�q���=��C�(-�%��o��7�K��A��
�Z�Z��)�)�
*�b����v�v�(�(��-��y�y��y�7�+-�7�7�+;�+;�A�F�F�+C�(��S��&�=�".�w��"D�C�"� %��+��7�%�%��w�'���H�H�S�M��#D�+�
*�s0�%E�-E�$!E�E�1E�E�E�E"�__main__)N)r"r?r6rrqrTrXri�
formatwarningrr%rLrfrkrr�rr
�<module>r�s`����	�
����"��D���,��0(�V �F�"�<�z���F�r