403Webshell
Server IP : 172.24.0.40  /  Your IP : 216.73.216.10
Web Server : Apache
System : Linux dbweb26.ust.edu.ph 4.18.0-513.5.1.el8_9.x86_64 #1 SMP Fri Sep 29 05:21:10 EDT 2023 x86_64
User : apache ( 48)
PHP Version : 8.2.18
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /usr/lib/python3.6/site-packages/sepolgen/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/lib/python3.6/site-packages/sepolgen/__pycache__/objectmodel.cpython-36.pyc
3

��cv�	@spdZddddddddd	g	Zd
ZdZdZeeBZeeeed
�ZedededediZGdd�d�ZGdd�d�Z	dS)z�
This module provides knowledge object classes and permissions. It should
be used to keep this knowledge from leaking into the more generic parts of
the policy generation.
Zsocket�fdZprocess�fileZlnk_fileZ	fifo_fileZdbusZ
capabilityZunix_stream_socket���)�n�r�w�brrrr	c@s eZdZdZdd�Zdd�ZdS)�PermMapaA mapping between a permission and its information flow properties.

    PermMap represents the information flow properties of a single permission
    including the direction (read, write, etc.) and an abstract representation
    of the bandwidth of the flow (weight).
    cCs||_||_||_dS)N)�perm�dir�weight)�selfrrr
�r�!/usr/lib/python3.6/objectmodel.py�__init__TszPermMap.__init__cCsd|jt|j|jfS)Nz'<sepolgen.objectmodel.PermMap %s %s %d>)r�
dir_to_strrr
)rrrr�__repr__YszPermMap.__repr__N)�__name__�
__module__�__qualname__�__doc__rrrrrrr
Msr
c@s@eZdZdZdd�Zdd�Zdd�Zdd	�Zd
d�Zdd
�Z	dS)�PermMappingsz�The information flow properties of a set of object classes and permissions.

    PermMappings maps one or more classes and permissions to their PermMap objects
    describing their information flow charecteristics.
    cCsi|_d|_t|_dS)N�)�classes�default_weight�	FLOW_BOTH�default_dir)rrrrrdszPermMappings.__init__cCs�d}x�|D]�}|j�}t|�dks
t|�dks
|ddkr<q
|ddkrx|d}||jkrbtd��i|j|<|j|}q
t|�dkr�td��|dkr�td	��t|dt|dt|d
��}|||j<q
WdS)zsRead the permission mappings from a file. This reads the format used
        by Apol in the setools suite.
        Nrr�#�classzduplicate class in perm map�z"error in object classs permissionszpermission outside of classr)�split�lenr�
ValueErrorr
�
str_to_dir�intr)rrZcur�lineZfields�c�pmrrr�	from_fileis"	
$

 zPermMappings.from_filecCs|j||S)z�Get the permission map for the object permission.

        Returns:
          PermMap representing the permission
        Raises:
          KeyError if the object or permission is not defined
        )r)r�objrrrr�get�szPermMappings.getcCs8y|j||}Wn tk
r2t||j|j�SX|S)aGet the permission map for the object permission or a default.

        getdefault is the same as get except that a default PermMap is
        returned if the object class or permission is not defined. The
        default is FLOW_BOTH with a weight of 5.
        )r�KeyErrorr
rr)rr*rr(rrr�
getdefault�s
zPermMappings.getdefaultcCs,t}x"|D]}|j||�}||jB}q
W|S)N)�	FLOW_NONEr-r)rr*�permsrrr(rrr�getdefault_direction�s

z!PermMappings.getdefault_directioncCs,d}x"|D]}|j||�}||j7}q
W|S)Nr)r-r
)rr*r/Ztotalrr(rrr�getdefault_distance�s

z PermMappings.getdefault_distanceN)
rrrrrr)r+r-r0r1rrrrr^s

rN)
rZimplicitly_typed_objectsr.Z	FLOW_READZ
FLOW_WRITErr$rr
rrrrr�<module>s


Youez - 2016 - github.com/yon3zu
LinuXploit