✘✘ GRAYBYTE WORDPRESS FILE MANAGER ✘✘

​🇳​​🇦​​🇲​​🇪♯➤ premium290.web-hosting.com ​🇻​♯➤ 4.18.0-553.45.1.lve.el8.x86_64 #1 SMP 🇾​♯➤ 2025

𝗛𝗢𝗠𝗘 𝗜𝗗 ♯➤ 63.250.38.37 ♯➤ 𝗔𝗗𝗠𝗜𝗡 𝗜𝗗 216.73.217.51
𝗢𝗣𝗧𝗜𝗢𝗡𝗦 ♯ CRL ♯➤ 𝗢𝗞 ┃ WGT ♯➤ 𝗢𝗞 ┃ SDO ♯➤ 𝗢𝗙𝗙 ┃ PKEX ♯➤ 𝗢𝗙𝗙
𝗗𝗘𝗔𝗖𝗧𝗜𝗩𝗔𝗧𝗘𝗗 ♯➤ 𝗔𝗟𝗟 𝗪𝗢𝗥𝗞𝗜𝗡𝗚....

𝗛𝗢𝗠𝗘
𝗖𝗨𝗥𝗥𝗘𝗡𝗧 𝗙𝗜𝗟𝗘 : /opt/cloudlinux/venv/lib/python3.11/site-packages/clcagefslib/webisolation//libenter.py
# -*- coding: utf-8 -*-
#
# Copyright © Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2025 All Rights Reserved
#
# Licensed under CLOUD LINUX LICENSE AGREEMENT
# http://cloudlinux.com/docs/LICENCE.TXT
#
"""Library functions for executing commands inside CageFS for a site."""

import os
import pwd
import subprocess
from pathlib import Path
from typing import List

from clcommon import cpapi

from .jail_utils import get_website_id, get_user_var_cagefs_path


def enter_site(site: str, command: List[str]) -> int:
    """
    Execute a command inside CageFS for a site (document root or domain).
    User only! Inside cagefs only!

    :site:
        Document root or domain name
    :command:
        Command and arguments to execute

    Returns:
        int: Exit code from the executed command

    Raises:
        ValueError: If site cannot be resolved or isolation is not configured
    """
    # Resolve site to document root
    document_root = site
    if not document_root.startswith("/"):
        try:
            document_root = cpapi.docroot(site)[0]
        except cpapi.cpapiexceptions.NoDomain:
            raise ValueError(f"Domain {site} not found")

    if not os.path.exists(document_root):
        raise ValueError(f"Document root {document_root} does not exist")

    docroot_md5 = get_website_id(document_root)
    inside_cagefs_path = Path("/var/.cagefs/")
    if inside_cagefs_path.exists():
        # we are inside cagefs -> call proxyexec wrapper
        website_token_path = inside_cagefs_path / f"website/{docroot_md5}/.cagefs.token"

        if not website_token_path.exists():
            raise ValueError(f"Website {site} not found or isolation is not enabled")

        return subprocess.call(
            ["/bin/cagefs_enter.proxied", *command],
            env={**os.environ, "WEBSITE_TOKEN_PATH": website_token_path},
        )
    else:
        # we are outside cagefs -> a bit different path to token
        jail_path = Path(get_user_var_cagefs_path(pwd.getpwuid(os.getuid()).pw_name))
        website_token_path = jail_path / f".cagefs/website/{docroot_md5}/.cagefs.token"

        if not website_token_path.exists():
            raise ValueError(f"Website {site} not found or isolation is not enabled")

        return subprocess.call(
            ["/bin/cagefs_enter", *command],
            env={**os.environ, "WEBSITE_TOKEN_PATH": website_token_path},
        )


Current_dir [ 𝗡𝗢𝗧 𝗪𝗥𝗜𝗧𝗘𝗔𝗕𝗟𝗘 ] Document_root [ 𝗪𝗥𝗜𝗧𝗘𝗔𝗕𝗟𝗘 ]


[ Back ]
𝗡𝗔𝗠𝗘
𝗦𝗜𝗭𝗘
𝗟𝗔𝗦𝗧 𝗧𝗢𝗨𝗖𝗛
𝗨𝗦𝗘𝗥
𝗦𝗧𝗔𝗧𝗨𝗦
𝗙𝗨𝗡𝗖𝗧𝗜𝗢𝗡𝗦
..
--
23 Jun 2026 7.00 AM
root / root
0755
__pycache__
--
23 Jun 2026 7.00 AM
root / root
0755
crontab
--
23 Jun 2026 7.00 AM
root / root
0755
__init__.py
0.242 KB
29 May 2026 9.37 AM
root / root
0644
admin_config.py
3.073 KB
29 May 2026 9.37 AM
root / root
0644
config.py
1.737 KB
29 May 2026 9.37 AM
root / root
0644
jail_config.py
2.716 KB
29 May 2026 9.37 AM
root / root
0644
jail_config_builder.py
7.215 KB
29 May 2026 9.37 AM
root / root
0644
jail_utils.py
5.584 KB
29 May 2026 9.37 AM
root / root
0644
libenter.py
2.355 KB
29 May 2026 9.37 AM
root / root
0644
mount_config.py
1.38 KB
29 May 2026 9.37 AM
root / root
0644
mount_ordering.py
4.96 KB
29 May 2026 9.37 AM
root / root
0644
mount_types.py
1.261 KB
29 May 2026 9.37 AM
root / root
0644
php.py
3.394 KB
29 May 2026 9.37 AM
root / root
0644
service.py
1.758 KB
29 May 2026 9.37 AM
root / root
0644
triggers.py
1.899 KB
29 May 2026 9.37 AM
root / root
0644

✘✘ GRAYBYTE WORDPRESS FILE MANAGER @ 2026 CONTACT ME ✘✘
Static GIF Static GIF