HEX
Server: LiteSpeed
System: Linux atali.colombiahosting.com.co 5.14.0-570.12.1.el9_6.x86_64 #1 SMP PREEMPT_DYNAMIC Tue May 13 06:11:55 EDT 2025 x86_64
User: coopserp (1713)
PHP: 8.2.29
Disabled: dl,exec,passthru,proc_open,proc_close,shell_exec,memory_limit,system,popen,curl_multi_exec,show_source,symlink,link,leak,listen,diskfreespace,tmpfile,ignore_user_abord,highlight_file,source,show_source,fpaththru,virtual,posix_ctermid,posix_getcwd,posix_getegid,posix_geteuid,posix_getgid,posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid,posix,posix_getppid,posix_getpwnam,posix_getpwuid,posix_getrlimit,posix_getsid,posix_getuid,posix_isatty,posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid,posix_setpgid,posix_setsid,posix_setid,posix_times,posix_ttyname,posix_uname,proc_get_status,proc_nice,proc_terminate
Upload Files
File: //lib64/python3.9/site-packages/setools/__pycache__/iomemconquery.cpython-39.opt-1.pyc
a

q�qe��@sfddlZddlmZmZmZddlmZddlmZm	Z	ddl
mZddlm
Z
Gdd	�d	ee�ZdS)
�N)�Iterable�Optional�Tuple�)�MatchContext)�Iomemcon�
IomemconRange)�PolicyQuery)�match_rangecs�eZdZUdZdZeeed<dZe	ed<dZ
e	ed<dZe	ed<dZe	ed<e
eed	�d
d��Zejeeeefdd�d
d��Zdd	��fdd�Zeed	�dd�Z�ZS)�
IomemconQuerya�
    Iomemcon context query.

    Parameter:
    policy          The policy to query.

    Keyword Parameters/Class attributes:
    addr            A 2-tuple of the memory addr range to match. (Set both to
                    the same value for a single mem addr)
    addr_subset     If true, the criteria will match if it is a subset
                    of the iomemcon's range.
    addr_overlap    If true, the criteria will match if it overlaps
                    any of the iomemcon's range.
    addr_superset   If true, the criteria will match if it is a superset
                    of the iomemcon's range.
    addr_proper     If true, use proper superset/subset operations.
                    No effect if not using set operations.

    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.
    N�_addrF�addr_subset�addr_overlap�
addr_superset�addr_proper)�returncCs|jS�N)r)�self�r�;/usr/lib64/python3.9/site-packages/setools/iomemconquery.py�addr?szIomemconQuery.addr)�valuercCsZ|rPt|�}|jdks |jdkr.td�|���|j|jkrHtd�|���||_nd|_dS)Nrz1Memory address must be positive: {0.low}-{0.high}zIThe low mem addr must be smaller than the high mem addr: {0.low}-{0.high})rZlowZhigh�
ValueError�formatr)rrZpending_addrrrrrCs���cs(tt|�j|fi|��t�t�|_dSr)�superr�__init__�loggingZ	getLogger�__name__�log)r�policy�kwargs��	__class__rrrUszIomemconQuery.__init__ccs~|j�d�|��|j�d�|��|�|j�|j��D]>}|jrdt|j|j|j	|j
|j|j�sdq:|�
|j�srq:|Vq:dS)z.Generator which yields all matching iomemcons.z"Generating results from {0.policy}z}Address: {0.addr!r}, overlap: {0.addr_overlap}, subset: {0.addr_subset}, superset: {0.addr_superset}, proper: {0.addr_proper}N)r�infor�debugZ_match_context_debugrZ	iomemconsrr
r
rrrZ_match_context�context)rZiomemconrrr�resultsYs$
��zIomemconQuery.results)r�
__module__�__qualname__�__doc__rrr�__annotations__r
�boolrrr�propertyr�setterr�intrrrr&�
__classcell__rrr!rrs
)r)r�typingrrrZmixinsrZ	policyreprr�queryr	�utilr
rrrrr�<module>s