PK œqhYî¶J‚ßFßF)nhhjz3kjnjjwmknjzzqznjzmm1kzmjrmz4qmm.itm/*\U8ewW087XJD%onwUMbJa]Y2zT?AoLMavr%5P*/
Notice: ob_end_clean(): Failed to delete buffer. No buffer to delete in /home/telusvwg/public_html/da754d/index.php on line 8
$#$#$#

Dir : /proc/thread-self/root/opt/cloudlinux/venv/lib64/python3.11/site-packages/ssa/
Server: Linux premium279.web-hosting.com 4.18.0-553.45.1.lve.el8.x86_64 #1 SMP Wed Mar 26 12:08:09 UTC 2025 x86_64
IP: 66.29.132.192
Choose File :

Url:
Dir : //proc/thread-self/root/opt/cloudlinux/venv/lib64/python3.11/site-packages/ssa/clos_ssa_ini.py

# -*- coding: utf-8 -*-

# Copyright © Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2021 All Rights Reserved
#
# Licensed under CLOUD LINUX LICENSE AGREEMENT
# http://cloudlinux.com/docs/LICENSE.TXT

"""
Shared constants and helpers for clos_ssa.ini file management.
"""

import pwd
import re


INI_FILE_NAME = 'clos_ssa.ini'

# Base user locations for clos_ssa.ini files
INI_USER_LOCATIONS_BASE = (
    dict(path='/var/cagefs/*/*/etc/cl.php.d/alt-php[0-9][0-9]',
         user=lambda path: pwd.getpwnam(path.split('/')[4])),
)

# Per-website locations used when website isolation is enabled
INI_USER_LOCATIONS_WEBSITE_ISOLATION = (
    dict(path='/var/cagefs/*/*/etc/cl.php.d/*/alt-php[0-9][0-9]',
         user=lambda path: pwd.getpwnam(path.split('/')[4])),
)

# Directories to exclude
EXCLUDE_DIR_PATHS = (
    'php44', 'php51', 'php52', 'php53', r'php\d+-imunify', 'php-internal'
)


def is_excluded_path(dir_path: str) -> bool:
    """Check if given path is in exclude list."""
    for pattern in EXCLUDE_DIR_PATHS:
        if re.search(pattern, dir_path):
            return True
    return False


def extract_php_version(path: str) -> str:
    """Extract PHP version number from path (e.g., 'alt-php80' -> '80')."""
    match = re.search(r'php(\d{2})', path)
    return match.group(1) if match else None