K
z d dl Z d dlmZmZ d dlmZ d dlmZ d dlm Z d dl
mZ d dlm
Z
d dlmZ ed ej Z G d
de ZdS ) N)MessageSinkScope)register_lock_file)recurring_check)LooseVersion)ossec)rules_update_lock)
check_lockzossec-rules-checkc Z e Zd ZdZd Zd Zd Z eedde d Z
d Zd
S )OssecRulesCheckerzkPlugin that reinstall ossec rules if a newer version is available
or there are no rules installed.
c " d | _ d | _ d S N)looptaskselfs V/opt/imunify360/venv/lib/python3.11/site-packages/im360/plugins/ossec_rules_checker.py__init__zOssecRulesChecker.__init__ s c p K || _ | | | _ d S r )r create_taskcheck_rules_recurrentr )r r s r create_sinkzOssecRulesChecker.create_sink s2 $$T%?%?%A%ABB r c h K | j r(| j | j d {V d S d S r )r cancelr s r shutdownzOssecRulesChecker.shutdown sE 9 I)OOOOOOOOO r Ti )check_period_firstcheck_lock_period lock_filec > K | d {V d S r )check_rulesr s r r z'OssecRulesChecker.check_rules_recurrent! s2 r c H K t j rd S t j t
j sd S t j }t j }|d S t | }|||k rt j
d d d {V d S d S )NT)
is_updated)r lockedospathisdirr ETC_DIRget_rules_installed_versionget_rules_versionr on_files_update)r installed_versionavailable_versions r r! zOssecRulesChecker.check_rules* s #%% Fw}}U]++ F!=??!355$F():;;% 111'>>>>>>>>>>>>
21r N)__name__
__module____qualname____doc__r r r r r
LOCK_FILEr r! r r r r s C C C
_ ! !
!? ? ? ? ?r r )r% !defence360agent.contracts.pluginsr r 'defence360agent.subsys.persistent_stater defence360agent.utilsr defence360agent.utils.commonr im360.subsysr im360.subsys.ossecr defence360agent.utils.check_lockr
IM360r2 r r3 r r