| Server IP : 213.136.93.164 / Your IP : 216.73.217.43 Web Server : Apache System : Linux m14200.contabo.net 5.14.0-611.54.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Wed May 6 18:03:03 EDT 2026 x86_64 User : ki692510 ( 1047) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /opt/imunify360/venv/lib/python3.11/site-packages/defence360agent/contracts/ |
Upload File : |
# todo: figure out how HookEvents.* is typed
# type: ignore
from defence360agent.contracts.config import HookEvents
from defence360agent.contracts.messages import Message
STARTED, FINISHED = "started", "finished"
class _HookEventBase(Message):
event = None
subtype = None
def __repr__(self):
filtered = {k: v for k, v in self.items() if k != "DUMP"}
return f"{self.__class__.__qualname__}({repr(filtered)})"
class _Agent(_HookEventBase):
event = HookEvents.AGENT
class _License(_HookEventBase):
event = HookEvents.LICENSE
class _MalwareScanning(_HookEventBase):
event = HookEvents.MALWARE_SCANNING
class _MalwareDetected(_HookEventBase):
event = HookEvents.MALWARE_DETECTED
class _MalwareCleanup(_HookEventBase):
event = HookEvents.MALWARE_CLEANUP
class HookEvent:
class AgentStarted(_Agent):
subtype = STARTED
class AgentMisconfig(_Agent):
subtype = "misconfig"
class LicenseExpired(_License):
subtype = "expired"
class LicenseExpiring(_License):
subtype = "expiring"
class LicenseRenewed(_License):
subtype = "renewed"
class MalwareScanningStarted(_MalwareScanning):
subtype = STARTED
class MalwareScanningFinished(_MalwareScanning):
subtype = FINISHED
class MalwareDetectedCritical(_MalwareDetected):
subtype = "critical"
class MalwareCleanupStarted(_MalwareCleanup):
subtype = STARTED
class MalwareCleanupFinished(_MalwareCleanup):
subtype = FINISHED