l E6 d dl Z d dlZd dlZd dlmZ d dlmZ d dlmZm Z d dl
mZ d dlm
Z
e j e Z G d de ZdS ) N)SystemConfig)MessageType)MessageSinkexpect)ProactiveDefence) proactivec ^ e Zd Zd ZddZ eej dej fd ZdS )PhpImmunityPluginc 6 d | _ t j | _ d S N)_loopr PHP_IMMUNITYconfig_php_immunity)selfs O/opt/imunify360/venv/lib/python3.11/site-packages/im360/plugins/php_immunity.py__init__zPhpImmunityPlugin.__init__ s
#3#@ returnNc K || _ d S r )r
)r loops r create_sinkzPhpImmunityPlugin.create_sink s
r messagec
K t |d t r| j t j k rt j | _ t j skt
j t j r t j
t j d S t j t j d d S t
j
t j rt j d {V d S d S d S d S )NconfT)
ignore_errors)
isinstancer r r r ospathisfiler PHP_IMMUNITY_COMPILED_RULESunlinkshutilrmtreeexistsPHP_IMMUNITY_FILENAMEapply_php_immunity_rules)r r s r on_config_updatez"PhpImmunityPlugin.on_config_update s
wv55 ?(,<,III'7'DD$#0
?7>>)"GHH IiCDDDDDM!=&*
7>>)"ABB ?#<>>>>>>>>>>> ? ?II? ?r )r N) __name__
__module____qualname__r r r r ConfigUpdater' r r r
r
sr A A A VK$%%?k.F ? ? ? &%? ? ?r r
)loggingr r" defence360agent.contracts.configr "defence360agent.contracts.messagesr !defence360agent.contracts.pluginsr r im360.contracts.configr im360.subsysr getLoggerr( loggerr
r, r r