shell bypass 403
3
�^� � @ sH d dl Z ddlmZmZ ddlmZ ddlmZ G dd� deee�ZdS )� N� )�MatchContext� MatchName)�PolicyQuery)�match_regexc s( e Zd ZdZ� fdd�Zdd� Z� ZS )�
NetifconQueryaG
Network interface context query.
Parameter:
policy The policy to query.
Keyword Parameters/Class attributes:
name The name of the network interface to match.
name_regex If true, regular expression matching will
be used for matching the name.
user The criteria to match the context's user.
user_regex If true, regular expression matching
will be used on the user.
role The criteria to match the context's role.
role_regex If true, regular expression matching
will be used on the role.
type_ The criteria to match the context's type.
type_regex If true, regular expression matching
will be used on the type.
range_ The criteria to match the context's range.
range_subset If true, the criteria will match if it is a subset
of the context's range.
range_overlap If true, the criteria will match if it overlaps
any of the context's range.
range_superset If true, the criteria will match if it is a superset
of the context's range.
range_proper If true, use proper superset/subset operations.
No effect if not using set operations.
c s$ t t| �j|f|� tjt�| _d S )N)�superr �__init__�loggingZ getLogger�__name__�log)�self�policy�kwargs)� __class__� �%/usr/lib64/python3.6/netifconquery.pyr : s zNetifconQuery.__init__c c sr | j jdj| �� | j| j � | j| j � xB| jj� D ]4}| jrVt|j | j| j
� rVq6| j|j�sdq6|V q6W dS )z.Generator which yields all matching netifcons.z+Generating netifcon results from {0.policy}N)
r �info�formatZ_match_name_debugZ_match_context_debugr Z netifcons�namer �netifZ
name_regexZ_match_context�context)r
r r r r �results>