HEX
Server: Apache
System: Linux cp11.instainternet.com 4.18.0-553.94.1.lve.el8.x86_64 #1 SMP Thu Jan 22 12:37:22 UTC 2026 x86_64
User: urbansports (1371)
PHP: 8.2.29
Disabled: NONE
Upload Files
File: //usr/share/cagefs/__pycache__/virtmp_mount.cpython-311.opt-1.pyc
�

vi�#����ddlmZddlmZddlmZddlmZddlmZej��ddlTddl	Z	ddl
Z
ddlZddlZddl
Z
ddlZddlmZmZddlZd	Zd
�Zd�Zd�Zd
�Zdd�ZdS)�)�absolute_import)�division)�print_function)�unicode_literals)�standard_library)�*N)�ClPwd�	mysql_libz/var/cagefs/c���tj�|��}|d|k}d|zg}|D]*}|r|r$||dkr|�d|z���+|S)Nr�>��@)�os�path�split�append)�plesk_main_dir�domain_names�
user_home_dir�home_dir_parts�is_home_dir_plesk�	ret_names�domain_names       �`/builddir/build/BUILDROOT/cagefs-7.6.28-1.el8.cloudlinux.x86_64/usr/share/cagefs/virtmp_mount.py�
get_data_listrCs����W�]�]�=�1�1�N�&�q�)�^�;���^�#�$�I�#�0�0�� �	0�%6�	0�;�.�YZ�J[�;[�;[����S�;�.�/�/�/����c���|dks|dkr|dkr
tj}n*tj�tjd��}t|||��}t
|��dkrdS|S)N�
�r�systemr
)�	cagefslib�PLESK_VHOSTS_Drr�joinr�len)r�plesk_ver_major�plesk_ver_minorrrrs      r�get_plesk_user_mountsr'Pst���"����B�!6�!6�?�a�;O�;O�#�1�������i�&>��I�I���n�l�M�J�J�I�
�9�~�~�����t��rc�t�t|�����}tdd��}|������}|���d}d}t
|��dkr|dz
}|df}tjdd|d	�
��}|�	��5}	|	�
||���}
ddd��n#1swxYwYi}t��}|
D]n}
|
d}|
d}	|�|��}n#tj
$rY�:wxYw||vr&|||vr||�|���h|g||<�o|D�]�}||d}||d}|�|��}||v�rHt|zdz|z}t j�|��st j�|��r.t)jd
|zdz��t-jd��t j�|��st!j|��|dz}t5|||||��}|�5t j�|��rt!j|����<t9j|���\}}t=j||d��t!j ||�����t|zdz|zdz}t j�|��rt!j|�����dS)Nz/etc/psa/.psa.shadow�rz�SELECT sys_users.login, domains.name FROM sys_users, hosting, domains WHERE domains.id = hosting.dom_id AND (hosting.sys_user_id = sys_users.id OR hosting.sys_user_id = sys_users.mapped_to)r
z AND sys_users.login = %s;r�	localhost�admin�psa)�host�user�passwd�db)�args�/zFile 'z
' existingz/virt.mp)�dirT)!�list�keys�open�readline�strip�closer$r
�MySQLConnector�connect�
execute_queryr	�get_uid�NoSuchUserExceptionr�PATH_TO_USER_FILESrr�islink�isfile�secureio�print_error�sys�exit�isdir�makedirsr'�remove�tempfile�mkstempr!�
write_file�rename)�system_users_datar%r&�user_name_list�f�password�	sql_queryr1�	connectorr0�data�domains_by_uid�clpwd_instance�dom�	user_namer�uid�prefixr�
user_file_dir�user_file_name�user_mp�_�temp_file_names                        r�scan_plesk_user_domainsr_js����+�0�0�2�2�3�3�N�	
�
#�S�)�)�A��z�z�|�|�!�!�#�#�H��G�G�I�I�I�A�I��D�
�>���a����1�1�	��q�!�#���(�k��08�U�D�D�D�I�	�	�	�	�	�6�����	���5�5��6�6�6�6�6�6�6�6�6�6�6����6�6�6�6��N��W�W�N��0�0����F�	��!�f��	� �(�(��3�3�C�C���(�	�	�	��H�	�����.� � ��.��"5�5�5��s�#�*�*�;�7�7�7��#.�-�N�3���$�!*�!*�	�"�9�-�a�0��)�)�4�Q�7�
��$�$�Y�/�/���.� � �/��7�#�=�	�I�M��w�~�~�m�,�,�
�����}�0M�0M�
��$�X�
�%=��%L�M�M�M��������7�=�=��/�/�
+���M�*�*�*�*�Z�7�N�,�N�3�,?��Ra�cp�q�q�G����7�>�>�.�1�1�.��I�n�-�-�-��%-�$4��$G�$G�$G�!��>��$�^�W�d�C�C�C��	�.�.�9�9�9�9�0�&�8�3�>��J�Z�W�N��w�~�~�n�-�-�
*��	�.�)�)�)��C!*�!*s$�=C!�!C%�(C%�D'�'D9�8D9c�,�tj��tj�d��}t	|��dkr+t|d��}t|d��}n!tj�d��dS|dkr!tj�d��dSt��}i}|��	|�
|��}|�|��}nC#tj$r1tjd|zd	z��t
jd��YnwxYw|D]N}|j}	|	�d
��r
|	dd�}	t%|j��dd�|	g||j<�Onw|���}|���D]N}|j}	|	�d
��r
|	dd�}	t%|j��dd�|	g||j<�Ot/|||��dS)
N�.�rr
zH
WARNING: Unexpected Plesk version. Skipping generation of virtmp files
rzW
WARNING: Plesk below 10 version is not supported. Skipping generation of virtmp files
zuser 'z' not foundr2������)�cldetectlib�getCP�
CP_VERSIONrr$�intrD�stderr�writer	r=�
get_pw_by_uidr>rBrCrE�pw_dir�endswith�str�pw_uid�pw_name�
get_user_dict�valuesr_)
rW�	ver_partsr%r&rUrMrX�
users_data�	user_datars
          r�generate_plesk_virtmprv�sU��������&�,�,�S�1�1�I�
�9�~�~�����i��l�+�+���i��l�+�+����
���Q�	R�	R�	R��������
���Q�	R�	R�	R����W�W�N�����	� �(�(��3�3�C�'�5�5�c�:�:�J�J���(�	�	�	�� ��I�!5�
�!E�F�F�F��H�Q�K�K�K�K�K�	����$�	_�	_�I�%�,�M��%�%�c�*�*�
3� -�c�r�c� 2�
�47�	�8H�4I�4I�"�#�#�4N�P]�3^��i�/�0�0�		_�$�1�1�3�3�
�#�*�*�,�,�	_�	_�I�%�,�M��%�%�c�*�*�
3� -�c�r�c� 2�
�47�	�8H�4I�4I�"�#�#�4N�P]�3^��i�/�0�0��-���P�P�P�P�Ps�*C7�7=D7�6D7c�t�tj��sdStj��t	|��dS�N)re�is_plesk�cagefsreconfigure�create_plesk_base_home_dirsrv)rWs r�
create_virtmpr|�s;����!�!�����1�3�3�3��)�$�$�$�$�$rrx)�
__future__rrrr�futurer�install_aliases�builtinsrrDrIr!rerz�clcommonr	r
rBr?rr'r_rvr|�rr�<module>r�sJ��Z'�&�&�&�&�&�������%�%�%�%�%�%�'�'�'�'�'�'�#�#�#�#�#�#� �� �"�"�"�����	�	�	�	�
�
�
�
�����������������%�%�%�%�%�%�%�%�����#��	�	�	����4K*�K*�K*�^)Q�)Q�)Q�Z%�%�%�%�%�%r