HEX
Server: Apache
System: Linux ns517114.ip-158-69-26.net 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: urgentelectrical (1063)
PHP: 8.2.33
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //lib64/python3.12/site-packages/setools/diff/__pycache__/fsuse.cpython-312.pyc
�

���iD
���ddlmZddlmZmZddlmZddlmZddl	m
Z
mZmZedd�	�Gd
�de��Z
Gd�d
e
�ZGd�dee�Zy)�)�	dataclass�)�Context�FSUse�)�ContextWrapper)�DiffResultDescriptor)�
Difference�DifferenceResult�WrapperT)�frozen�orderc�0�eZdZUdZeed<eed<eed<y)�
ModifiedFSUsez+Difference details for a modified fs_use_*.�rule�
added_context�removed_contextN)�__name__�
__module__�__qualname__�__doc__r�__annotations__r���9/usr/lib64/python3.12/site-packages/setools/diff/fsuse.pyrrs��6�
�K����rrc�b�eZdZdZdd�Zeee�Zeee�Zee	e�Z
dd�Zy)�FSUsesDifferencez@Determine the difference in fs_use_* rules between two policies.Nc�6�|jjd|j�d|j���|j	d�|jj�D�d�|jj�D��\|_|_}tt�|_
|D]k\}}t|j�t|j�k7s�2|jjt||j|j���my)z=Generate the difference in fs_use rules between the policies.z%Generating fs_use_* differences from z to c3�2K�|]}t|����y�w�N��FSUseWrapper��.0�fss  r�	<genexpr>z0FSUsesDifference.diff_fs_uses.<locals>.<genexpr>#s����C�(B�"�\�"�
�(B���c3�2K�|]}t|����y�wr r!r#s  rr&z0FSUsesDifference.diff_fs_uses.<locals>.<genexpr>$s����D�(C�"�\�"�
�(C�r'N)�log�info�left_policy�right_policy�	_set_diff�fs_uses�
added_fs_uses�removed_fs_uses�listr�modified_fs_usesr�context�append)�self�matched�	left_rule�
right_rules    r�diff_fs_useszFSUsesDifference.diff_fs_usess���	
���
�
�3�D�4D�4D�3E�T�$�J[�J[�I\�]�	_�=A�N�N�C��(8�(8�(@�(@�(B�C�D��(9�(9�(A�(A�(C�D�=F�9���D�0�'�!%�]� 3� 5���%,�!�I�z��i�/�/�0�N�:�CU�CU�4V�V��%�%�,�,�]�9�;E�;M�;M�;D�;L�;L�.N�O�	&-rc�F�|jjd�|`|`|`y)z%Reset diff results on policy changes.z#Resetting fs_use_* rule differencesN)r)�debugr/r0r2�r5s r�_reset_diffzFSUsesDifference._reset_diff7s%�������<�=���� ��!r)�returnN)rrrrr9r	rr/r0rr2r=rrrrrsI��J�O�(0�(��/��=�M�1�*�5�1�,�?�O�:�+�M�:�<�H��
"rrc�6�eZdZdZdZdeddfd�Zd�Zd�Zd	�Z	y)
r"z,Wrap fs_use_* rules to allow set operations.)�ruletyper%r3rr>Nc��||_|j|_|j|_t|j�|_t|�|_yr )�originr@r%rr3�hash�key)r5rs  r�__init__zFSUseWrapper.__init__Es:������
�
��
��'�'���%�d�l�l�3�����:��rc��|jSr �rDr<s r�__hash__zFSUseWrapper.__hash__Ls���x�x�rc�4�|j|jkSr rG�r5�others  r�__lt__zFSUseWrapper.__lt__Os���x�x�%�)�)�#�#rc�j�|j|jk(xr|j|jk(Sr )r@r%rJs  r�__eq__zFSUseWrapper.__eq__Rs'���}�}����.�F�4�7�7�e�h�h�3F�Fr)
rrrr�	__slots__rrErHrLrNrrrr"r"?s-��6�-�I��U��t���$�Grr"N)�dataclassesr�	policyreprrr3r�descriptorsr	�
differencer
rrrrr"rrr�<module>rTs[��
"�&�#�-�=�=��$�d�#��$��$��$"�z�$"�NG�7�5�>�Gr