fj d dl Z d dlZd dlmZ d dlmZ d dlmZ d dlm Z d dl mZ d dlm Z mZmZmZ e j ZdZ d d lmZ n# e$ r d ZY nw xY wdeeeef ef fdZd ededefdZd Zd Zd ZddZddZdS ) N)suppress)iglob)Tuple) disable_quota)user_context) INI_LOCATIONSINI_USER_LOCATIONS$INI_USER_LOCATIONS_WEBSITE_ISOLATIONis_excluded_pathz?/opt/cloudlinux/flags/enabled-flags.d/xray-ini-global-mode.flag)(is_website_isolation_allowed_server_widec dS )NF r V/opt/cloudlinux/venv/lib64/python3.11/site-packages/xray/reconfiguration/global_ini.pyr r s ur returnc # n K t D ]*} t | D ]}t | rd|fV +t D ]p} t | d D ]X}t | r | d | }|j |j f|fV 7# t d| Y VxY wqt rxt D ]r} t | d D ]X}t | r | d | }|j |j f|fV 7# t d| Y VxY wqdS dS )z Generator of existing paths (matching known wildcard locations) for additional ini files Returns tuple of (uid, gid) and path. )r r pathuserzhUnable to get information about user owning %s directory (maybe he`s already terminated?), skip updatingN) r r r r pw_uidpw_gidloggerinfor r )locationdir_path pw_records r _iter_existing_ini_locationsr $ s " # #h # #H)) (""""" # ' E Ehv.// E EH)) E,HV,X66 !')9:HDDDDD ,-57 7 7 E 011 I<