SILENT KILLERPanel

Current Path: > > opt > cloudlinux > venv > lib64 > python3.11 > > site-packages > clcagefslib > selector


Operation   : Linux premium131.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64
Software     : Apache
Server IP    : 162.0.232.56 | Your IP: 216.73.216.111
Domains      : 1034 Domain(s)
Permission   : [ 0755 ]

Files and Folders in: //opt/cloudlinux/venv/lib64/python3.11//site-packages/clcagefslib/selector

NameTypeSizeLast ModifiedActions
__pycache__ Directory - -
panel Directory - -
__init__.py File 180 bytes June 23 2025 12:23:22.
configure.py File 9034 bytes June 23 2025 12:23:22.
paths.py File 1438 bytes June 23 2025 12:23:22.

Reading File: //opt/cloudlinux/venv/lib64/python3.11//site-packages/clcagefslib/selector/paths.py

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

from clcagefslib.const import CL_ALT_CONF, CL_ALT_CAGEFS_CONF
from clcagefslib.io import read_file_cached
from clcommon import clcagefs


# Reads config file and returns paths to alternative binaries (as dictionary)
def get_alt_paths(php_state=None):
    cl_alt_conf = CL_ALT_CAGEFS_CONF if clcagefs.in_cagefs() else CL_ALT_CONF
    alt_paths = {}
    if os.path.isfile(cl_alt_conf):
        lines = read_file_cached(cl_alt_conf)
        for line in lines:
            line = line.rstrip()
            if line != "":
                ar = line.split()
                if len(ar) == 4:
                    vers = ar[1]
                    if (php_state is None) or (vers not in php_state) or (php_state[vers]):
                        path = ar[3]
                        alt_paths[path] = 1
    return alt_paths


# Returns list of dirnames like ['php51', 'php52']
@functools.cache
def get_alt_dirs():
    alt_paths = get_alt_paths()
    alt_dirs = {}
    for path in alt_paths:
        # Split string like "/opt/alt/php51/usr/bin/php"
        ar = path.split('/')
        dirname = ar[3]
        if dirname.startswith('php') and dirname[len('php'):].isnumeric():
            alt_dirs[dirname] = 1
    return list(alt_dirs.keys())

SILENT KILLER Tool