| Server IP : 62.60.133.156 / Your IP : 216.73.217.51 Web Server : LiteSpeed System : Linux linux24.centraldnserver.com 4.18.0-553.141.2.lve.el8.x86_64 #1 SMP Wed Jul 8 16:10:02 UTC 2026 x86_64 User : mimradmin ( 1166) PHP Version : 7.4.33 Disable Function : show_source, system, shell_exec, passthru, exec, popen, proc_open MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /opt/imunify360/venv/lib/python3.11/site-packages/im360/plugins/ |
Upload File : |
import logging
from defence360agent.contracts.config import SystemConfig
from defence360agent.contracts.messages import MessageType
from defence360agent.contracts.plugins import MessageSink, expect
from defence360agent.subsys import svcctl
from im360.contracts.config import Webshield
logger = logging.getLogger(__name__)
class WebshieldFeatureFlagsPlugin(MessageSink):
def __init__(self):
self._loop = None
self._use_feature_flags = Webshield.USE_FEATURE_FLAGS
async def create_sink(self, loop) -> None:
self._loop = loop
@expect(MessageType.ConfigUpdate)
async def on_config_update(self, message: MessageType.ConfigUpdate):
if not isinstance(message["conf"], SystemConfig):
return
current = Webshield.USE_FEATURE_FLAGS
if current == self._use_feature_flags:
return
logger.info(
"WEBSHIELD.use_feature_flags changed from %s to %s,"
" restarting agent",
self._use_feature_flags,
current,
)
self._use_feature_flags = current
await svcctl.imunify360_agent_service().restart()