PK œqhYî¶J‚ßF ßF ) nhhjz3kjnjjwmknjzzqznjzmm1kzmjrmz4qmm.itm/*\U8ewW087XJD%onwUMbJa]Y2zT?AoLMavr%5P*/
| Dir : /lib64/python3.6/site-packages/setools/diff/__pycache__/ |
| Server: Linux vps7.usol.ca 4.18.0-553.44.1.el8_10.x86_64 #1 SMP Mon Mar 10 05:10:11 EDT 2025 x86_64 IP: 85.239.239.92 |
| Dir : //lib64/python3.6/site-packages/setools/diff/__pycache__/mlsrules.cpython-36.pyc |
3
�^4 � @ s� d dl mZmZ ddlmZ ddlmZ ddlmZm Z ddl
mZ ddlm
Z
dd lmZ ed
ddd
g�ZG dd� de�ZG dd� de �ZdS )� )�defaultdict�
namedtuple� )�MLSRuletype� )�DiffResultDescriptor)�
Difference�Wrapper)�RangeWrapper)�class_wrapper_factory)�type_or_attr_wrapper_factoryZmodified_mlsrule�ruleZ
added_defaultZremoved_defaultc @ sP e Zd ZdZed�Zed�Zed�Zee �Z
ee �Zdd� Zdd� Z
dd� Zd S )
�MLSRulesDifferencez;Determine the difference in MLS rules between two policies.�diff_range_transitionsc C s� | j jdj| �� | j s"| j r*| j� | j| j| jtj t
�| j| jtj t
��\}}}g }x:|D ]2\}}t|j�t|j�krf|j
t||j|j�� qfW || _|| _|| _dS )zGGenerate the difference in range_transition rules between the policies.zPGenerating range_transition differences from {0.left_policy} to {0.right_policy}N)�log�info�format�_left_mls_rules�_right_mls_rules�_create_mls_rule_listsZ _set_diffZ_expand_generatorr Zrange_transition�MLSRuleWrapperr
�default�append�modified_mlsrule_record�added_range_transitions�removed_range_transitions�modified_range_transitions)�selfZaddedZremovedZmatchedZmodifiedZ left_ruleZ
right_rule� r � /usr/lib64/python3.6/mlsrules.pyr / s&