wo4hddlZddlmZddlmZddlmZmZddlm Z ddl m Z m Z ddl mZddlmZdd lmZdd lmZdd lmZejeZd xZ\ ZZZZZZ Z!Z"Z#Z$Z%ed Z&de'fdZ(d&dee)de'fdZ*d&dee)fdZ+d&dee)fdZ,d&dee)fdZ-d&dee)fdZ. d&dee)fdZ/d&dee)fdZ0d&dee)fdZ1ej2dddZ3ej2dddZ4d&de)dzde'fd Z5d&dee)fd!Z6d&dee)fd"Z7ee+ee,ee-ee.ee/e e0e!e1e"e3e#e5e$e6e%e7i Z8d#Z9d'd$Z:d%Z;dS)(N)Path)Optional)MyImunifyConfigPermissionsConfig) LicenseCLN) AV_REPORTFULL)FeatureManagementPerms) MyImunify) HostingPanel)Plesk)importer) zmalware_scanner.viewzmalware_scanner.cleanz3malware_scanner.clean_requires_myimunify_protectionzmalware_scanner.on_demand.scanz1malware_scanner.on_demand.scan_without_rate_limitz malware_scanner.ignore_list.editz*malware_scanner.config.default_action.editz%malware_scanner.imunify_patch.enabledz2malware_scanner.imunify_patch.eligible_to_purchasezproactive_defense.viewz"proactive_defense.config.mode.editz/etc/sysconfig/imunify360returnc\tjtjko tjSN)r NAMEr rUSE_PLESK_SERVICE_PLANZ/opt/imunify360/venv/lib/python3.11/site-packages/defence360agent/contracts/permissions.pyis_plesk_service_plan_enabledr-s#uz) 5  4ruserc*tj|Sr)r get_protectionrs rmyimunify_protection_enabledr4s  #D ) ))rcX|dStj|jttfvSNT)r get_permavrr rs rms_viewr!8s2 |t ! *4 0 0 3 8 rctjstjsdS|dStrdSt j|jtkS)NFT)ris_freeis_validrr rr r rs rms_cleanr%Bs^:#6#8#8u |t$&&t ! *4 0 0 3t ;;rcVtjrt|St|Sr)rENABLEDrr%rs r&ms_clean_requires_myimunify_protectionr(Ps'2+D111 D>>rc^|dStjrdStrdStjSr)rr'rrALLOW_MALWARE_SCANrs rms_on_demand_scanr+Vs8 |tt$&&t  //rcPtjrt|StjSr)rr'rrr*rs r$ms_on_demand_scan_without_rate_limitr-es&2+D111  //rc>|dStjrdStjSNTF)rr'rUSER_IGNORE_LISTrs rms_ignore_list_editr1ns% |tu  --rc>|dStjrdStjSr/)rr'rUSER_OVERRIDE_MALWARE_ACTIONSrs rms_config_default_action_editr4ys' |tu  ::rzimav.contracts.permissionsis_imunify_patch_enabledcdSNFr_s rr:er)modulenamedefaultz.imav.malwarelib.api.imunify_patch_subscriptionhas_imunify_patch_subscriptionscdSr7rr8s rr:r:r;rcFtjpt|Sr)ris_eligible_for_imunify_patchr?rs r%ms_imunify_patch_eligible_to_purchaserCs#022 1 *4 0 0rcN|dStj|jtkSr)r r proactiver rs rpd_viewrFs% |t ! *4 0 0 :d BBrc>|dStjrdStjSr/)rr'rUSER_OVERRIDE_PROACTIVE_DEFENSErs rpd_config_mode_editrIs% |tu  <z$permissions_list..s9     *d + +    r) PERMISSIONSrs`rpermissions_listrWs.    %   rr)rN)<loggingpathlibrtypingr defence360agent.contracts.configrr!defence360agent.contracts.licenser,defence360agent.feature_management.constantsrr (defence360agent.feature_management.modelr defence360agent.myimunify.modelr +defence360agent.subsys.panels.hosting_panelr #defence360agent.subsys.panels.pleskr defence360agent.utilsr getLogger__name__loggerrVMS_VIEWMS_CLEAN&MS_CLEAN_REQUIRES_MYIMUNIFY_PROTECTIONMS_ON_DEMAND_SCAN$MS_ON_DEMAND_SCAN_WITHOUT_RATE_LIMITMS_IGNORE_LIST_EDITMS_CONFIG_DEFAULT_ACTION_EDITMS_IMUNIFY_PATCH_ENABLED%MS_IMUNIFY_PATCH_ELIGIBLE_TO_PURCHASEPD_VIEWPD_CONFIG_MODE_EDITGLOBAL_CONFDIRboolrstrrr!r%r(r+r-r1r4getms_imunify_patch_enabledr?rCrFrIrKrNrQrWrrrrvsOOOOOOOO888888HHHHHHHHKKKKKK555555DDDDDD555555******  8 $ $    *(!) 122t**x}*****(3- < <8C= < < < <# 0 0HSM 0 0 0 0 00 3-0000..hsm.... ; ; ; ; ; ;(8< ' # O#/(, ; * O###d dCC(3-CCCC==hsm==== W h*.((*N,!#@6)+P W,",,,FFFF r