a i@sddlmZddlZddlZddlmZddlmZm Z m Z ddl m Z ddl mZddlmZmZmZddlmZdd lmZddlZddlZdad ad d ZGd ddeZGdddeZGdddeZGdddeZGdddeZGdddeZ GdddeZ!GdddeZ"GdddeZ#Gdd d eZ$Gd!d"d"eZ%Gd#d$d$eZ&Gd%d&d&eZ'Gd'd(d(eZ(Gd)d*d*eZ)Gd+d,d,eZ*Gd-d.d.eZ+Gd/d0d0eZ,dS)1)GLibN)config)DEFAULT_ZONE_TARGETDEFAULT_POLICY_TARGETDEFAULT_POLICY_PRIORITYdbus_to_python) Rich_Rule)normalize_ipset_entrycheck_entry_overlaps_existingcheck_for_overlapping_entries)errors) FirewallErrorFcstfdd}|S)z#Decorator to handle exceptions c sd}|sz|i|WStjjy}zd|}|}tsDd|vrVtdn0d|vrht|nd}|rzt|n tt|WYd}~ndd}~0ty}z tsn tt|WYd}~n.d}~0tytsn tt Yn0t sqqdS)NFZNotAuthorizedExceptionzorg.freedesktop.DBus.ErrorT) dbus exceptions DBusExceptionget_dbus_messageZ get_dbus_nameexception_handlerstrr Exception traceback format_excnot_authorized_loop)argskwargsZ authorizedeZ dbus_messageZ dbus_namefunc3/usr/lib/python3.9/site-packages/firewall/client.py_impl-s6      z handle_exceptions.._impl) functoolswraps)rr rrrhandle_exceptions*s!r#c@seZdZedddZeddZeddZedd Zed d Zed d Z eddZ eddZ eddZ eddZ eddZeddZeddZeddZeddZed d!Zed"d#Zed$d%Zed&d'Zed(d)Zed*d+Zed,d-Zed.d/Zed0d1Zed2d3Zed4d5Zed6d7Zed8d9Zed:d;Z edd?Z"ed@dAZ#edBdCZ$edDdEZ%edFdGZ&edHdIZ'edJdKZ(edLdMZ)edNdOZ*edPdQZ+edRdSZ,edTdUZ-edVdWZ.edXdYZ/edZd[Z0ed\d]Z1ed^d_Z2ed`daZ3edbdcZ4edddeZ5edfdgZ6edhdiZ7edjdkZ8edldmZ9edndoZ:edpdqZ;edrdsZedxdyZ?edzd{Z@ed|d}ZAed~dZBeddZCeddZDeddZEeddZFeddZGeddZHeddZIeddZJeddZKeddZLeddZMeddZNdS)FirewallClientZoneSettingsNcCsddddtgggdggggggddg|_gd|_gd|_|r~t|trjt|D]\}}|||j|<qRt|tr~||dS)NF)versionshort descriptionUNUSEDtargetservicesports icmp_blocks masquerade forward_ports interfacessourcesZ rules_str protocols source_portsZicmp_block_inversionforward)sr5r5br5r5(ss)r5r6(ssss)r5r5r5r5r7r6r6) rsettings settings_namesettings_dbus_type isinstancelist enumeratedictsetSettingsDictselfr9ivrrr__init__Ts    z#FirewallClientZoneSettings.__init__cCsd|j|jfSNz%s(%r) __class__r9rBrrr__repr__ksz#FirewallClientZoneSettings.__repr__cCs2i}t|j|jD]\}}|dkr$q|||<q|S)Nr)zipr:r9rBr9keyvaluerrrgetSettingsDictos  z*FirewallClientZoneSettings.getSettingsDictcCs$|D]}|||j|j|<qdSNr9r:indexrBr9rNrrrr@wsz*FirewallClientZoneSettings.setSettingsDictcCsxi}t|j|j|jD]\\}}}|dkr*qt|turJtj||d||<qt|turjtj ||d||<q|||<q|S)Nr)Z signature rLr:r9r;typer=rArrayr? DictionaryrBr9rNrOsigrrrgetSettingsDbusDict{s   z.FirewallClientZoneSettings.getSettingsDbusDictcCs$|}|d=|d=|d=|d=|SNr&r'r(r*)rPrBr9rrrgetRuntimeSettingsDicts z1FirewallClientZoneSettings.getRuntimeSettingsDictcCs$|}|d=|d=|d=|d=|Sr]r\r^rrrgetRuntimeSettingsDbusDicts z5FirewallClientZoneSettings.getRuntimeSettingsDbusDictcCs |jdSNrr9rIrrr getVersionsz%FirewallClientZoneSettings.getVersioncCs||jd<dSrbrcrBr&rrr setVersionsz%FirewallClientZoneSettings.setVersioncCs |jdSNrcrIrrrgetShortsz#FirewallClientZoneSettings.getShortcCs||jd<dSrgrcrBr'rrrsetShortsz#FirewallClientZoneSettings.setShortcCs |jdSNrcrIrrrgetDescriptionsz)FirewallClientZoneSettings.getDescriptioncCs||jd<dSrlrcrBr(rrrsetDescriptionsz)FirewallClientZoneSettings.setDescriptioncCs|jdtkr|jdSdS)Ndefault)r9rrIrrr getTargetsz$FirewallClientZoneSettings.getTargetcCs|dkr |nt|jd<dS)Nrrrq)rr9rBr*rrr setTargetsz$FirewallClientZoneSettings.setTargetcCs |jdSNrcrIrrr getServicessz&FirewallClientZoneSettings.getServicescCs||jd<dSrvrcrBr+rrr setServicessz&FirewallClientZoneSettings.setServicescCs0||jdvr |jd|n ttj|dSrvr9appendrr ALREADY_ENABLEDrBservicerrr addServicesz%FirewallClientZoneSettings.addServicecCs0||jdvr |jd|n ttj|dSrvr9removerr NOT_ENABLEDr~rrr removeServicesz(FirewallClientZoneSettings.removeServicecCs||jdvSrvrcr~rrr queryServicesz'FirewallClientZoneSettings.queryServicecCs |jdSNrcrIrrrgetPortssz#FirewallClientZoneSettings.getPortscCs||jd<dSrrcrBr,rrrsetPortssz#FirewallClientZoneSettings.setPortscCs@||f|jdvr(|jd||fnttjd||fdSNr'%s:%s'r{rBportprotocolrrraddPorts  z"FirewallClientZoneSettings.addPortcCs@||f|jdvr(|jd||fnttjd||fdSrrrrrr removePorts  z%FirewallClientZoneSettings.removePortcCs||f|jdvSrrcrrrr queryPortsz$FirewallClientZoneSettings.queryPortcCs |jdSN rcrIrrr getProtocolssz'FirewallClientZoneSettings.getProtocolscCs||jd<dSrrcrBr2rrr setProtocolssz'FirewallClientZoneSettings.setProtocolscCs0||jdvr |jd|n ttj|dSrr{rBrrrr addProtocolsz&FirewallClientZoneSettings.addProtocolcCs0||jdvr |jd|n ttj|dSrrrrrrremoveProtocolsz)FirewallClientZoneSettings.removeProtocolcCs||jdvSrrcrrrr queryProtocolsz(FirewallClientZoneSettings.queryProtocolcCs |jdSNrcrIrrrgetSourcePortssz)FirewallClientZoneSettings.getSourcePortscCs||jd<dSrrcrrrrsetSourcePortssz)FirewallClientZoneSettings.setSourcePortscCs@||f|jdvr(|jd||fnttjd||fdSNrrr{rrrr addSourcePorts  z(FirewallClientZoneSettings.addSourcePortcCs@||f|jdvr(|jd||fnttjd||fdSrrrrrrremoveSourcePort s  z+FirewallClientZoneSettings.removeSourcePortcCs||f|jdvSrrcrrrrquerySourcePortsz*FirewallClientZoneSettings.querySourcePortcCs |jdSNrcrIrrr getIcmpBlockssz(FirewallClientZoneSettings.getIcmpBlockscCs||jd<dSrrcrBZ icmpblocksrrr setIcmpBlockssz(FirewallClientZoneSettings.setIcmpBlockscCs0||jdvr |jd|n ttj|dSrr{rBZicmptyperrr addIcmpBlocksz'FirewallClientZoneSettings.addIcmpBlockcCs0||jdvr |jd|n ttj|dSrrrrrrremoveIcmpBlock"sz*FirewallClientZoneSettings.removeIcmpBlockcCs||jdvSrrcrrrrqueryIcmpBlock(sz)FirewallClientZoneSettings.queryIcmpBlockcCs |jdSNrcrIrrrgetIcmpBlockInversion,sz0FirewallClientZoneSettings.getIcmpBlockInversioncCs||jd<dSrrc)rBflagrrrsetIcmpBlockInversion/sz0FirewallClientZoneSettings.setIcmpBlockInversioncCs&|jdsd|jd<n ttjddS)NrTicmp-block-inversionr9rr r}rIrrraddIcmpBlockInversion2s  z0FirewallClientZoneSettings.addIcmpBlockInversioncCs&|jdrd|jd<n ttjddS)NrFrr9rr rrIrrrremoveIcmpBlockInversion8s  z3FirewallClientZoneSettings.removeIcmpBlockInversioncCs |jdSrrcrIrrrqueryIcmpBlockInversion>sz2FirewallClientZoneSettings.queryIcmpBlockInversioncCs |jdSNrcrIrrr getForwardBsz%FirewallClientZoneSettings.getForwardcCs||jd<dSrrcrBr4rrr setForwardEsz%FirewallClientZoneSettings.setForwardcCs&|jdsd|jd<n ttjddS)NrTr4rrIrrr addForwardHs  z%FirewallClientZoneSettings.addForwardcCs&|jdrd|jd<n ttjddS)NrFr4rrIrrr removeForwardNs  z(FirewallClientZoneSettings.removeForwardcCs |jdSrrcrIrrr queryForwardTsz'FirewallClientZoneSettings.queryForwardcCs |jdSNrcrIrrr getMasqueradeXsz(FirewallClientZoneSettings.getMasqueradecCs||jd<dSrrcrBr.rrr setMasquerade[sz(FirewallClientZoneSettings.setMasqueradecCs&|jdsd|jd<n ttjddS)NrTr.rrIrrr addMasquerade^s  z(FirewallClientZoneSettings.addMasqueradecCs&|jdrd|jd<n ttjddS)NrFr.rrIrrrremoveMasqueradeds  z+FirewallClientZoneSettings.removeMasqueradecCs |jdSrrcrIrrrqueryMasqueradejsz*FirewallClientZoneSettings.queryMasqueradecCs |jdSN rcrIrrrgetForwardPortsnsz*FirewallClientZoneSettings.getForwardPortscCs||jd<dSrrcrrrrsetForwardPortsqsz*FirewallClientZoneSettings.setForwardPortscCsd|dur d}|durd}||||f|jdvrH|jd||||fnttjd||||fdSNr%r '%s:%s:%s:%s'r{rBrrZto_portZto_addrrrraddForwardPortts z)FirewallClientZoneSettings.addForwardPortcCsd|dur d}|durd}||||f|jdvrH|jd||||fnttjd||||fdSrrrrrrremoveForwardPorts z,FirewallClientZoneSettings.removeForwardPortcCs.|dur d}|durd}||||f|jdvS)Nr%rrcrrrrqueryForwardPorts z+FirewallClientZoneSettings.queryForwardPortcCs |jdSN rcrIrrr getInterfacessz(FirewallClientZoneSettings.getInterfacescCs||jd<dSrrcrBr0rrr setInterfacessz(FirewallClientZoneSettings.setInterfacescCs0||jdvr |jd|n ttj|dSrr{rB interfacerrr addInterfacesz'FirewallClientZoneSettings.addInterfacecCs0||jdvr |jd|n ttj|dSrrrrrrremoveInterfacesz*FirewallClientZoneSettings.removeInterfacecCs||jdvSrrcrrrrqueryInterfacesz)FirewallClientZoneSettings.queryInterfacecCs |jdSN rcrIrrr getSourcessz%FirewallClientZoneSettings.getSourcescCs||jd<dSrrcrBr1rrr setSourcessz%FirewallClientZoneSettings.setSourcescCs0||jdvr |jd|n ttj|dSrr{rBsourcerrr addSourcesz$FirewallClientZoneSettings.addSourcecCs0||jdvr |jd|n ttj|dSrrrrrr removeSourcesz'FirewallClientZoneSettings.removeSourcecCs||jdvSrrcrrrr querySourcesz&FirewallClientZoneSettings.querySourcecCs |jdS)N rcrIrrr getRichRulessz'FirewallClientZoneSettings.getRichRulescCsdd|D}||jd<dS)NcSsg|]}tt|dqSZrule_strrr .0rrrr z;FirewallClientZoneSettings.setRichRules..rrcrBZrulesrrr setRichRulessz'FirewallClientZoneSettings.setRichRulescCs>tt|d}||jdvr.|jd|n ttj|dSNrrrr r9r|rr r}rBrulerrr addRichRulesz&FirewallClientZoneSettings.addRichRulecCs>tt|d}||jdvr.|jd|n ttj|dSrrr r9rrr rrrrrremoveRichRulesz)FirewallClientZoneSettings.removeRichRulecCstt|d}||jdvSrrr r9rrrr queryRichRulesz(FirewallClientZoneSettings.queryRichRule)N)O__name__ __module__ __qualname__r#rErJrPr@r\r_rardrfrirkrnrprsrurxrzrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr$Ss,                                                                          r$c@seZdZddZeddZeddZeddZed d Zed d Z ed dZ eddZ eddZ eddZ eddZeddZeddZeddZeddZedd Zed!d"Zed#d$Zed%d&Zed'd(Zed)d*Zed+d,Zed-d.Zed/d0Zed1d2Zed3d4Zed5d6Zed7d8Zed9d:Z ed;d<Z!ed=d>Z"ed?d@Z#edAdBZ$edCdDZ%edEdFZ&edGdHZ'edIdJZ(edKdLZ)edMdNZ*edOdPZ+edQdRZ,edSdTZ-edUdVZ.edWdXZ/edYdZZ0ed[d\Z1ed]d^Z2ed_d`Z3edadbZ4edcddZ5ededfZ6edgdhZ7edidjZ8edkdlZ9edmdnZ:edodpZ;edqdrZedwdxZ?edydzZ@ed{d|ZAed}d~ZBeddZCeddZDeddZEeddZFeddZGeddZHeddZIeddZJeddZKeddZLeddZMeddZNeddZOeddZPdS)FirewallClientConfigZonecCsL||_||_|jtjj||_tj|jtjjd|_ tj|jdd|_ dSNdbus_interfaceorg.freedesktop.DBus.Properties) buspath get_objectrrDBUS_INTERFACEdbus_obj InterfaceDBUS_INTERFACE_CONFIG_ZONEfw_zone fw_propertiesrBrrrrrrEsz!FirewallClientConfigZone.__init__cCst|jtjj|SrQ)rr Getrrr rBproprrr get_propertysz%FirewallClientConfigZone.get_propertycCst|jtjjSrQ)rr GetAllrrr rIrrrget_propertiessz'FirewallClientConfigZone.get_propertiescCs|jtjj||dSrQ)r Setrrr rBrrOrrr set_propertys z%FirewallClientConfigZone.set_propertycCstt|jSrQ)r$rr  getSettings2rIrrr getSettingssz$FirewallClientConfigZone.getSettingscCs|j|dSrQ)r update2r\r^rrrupdateszFirewallClientConfigZone.updatecCs|jdSrQ)r  loadDefaultsrIrrrrsz%FirewallClientConfigZone.loadDefaultscCs|jdSrQ)r rrIrrrrszFirewallClientConfigZone.removecCs|j|dSrQ)r renamerBnamerrrrszFirewallClientConfigZone.renamecCs |jSrQ)r rdrIrrrrd sz#FirewallClientConfigZone.getVersioncCs|j|dSrQ)r rfrerrrrfsz#FirewallClientConfigZone.setVersioncCs |jSrQ)r rirIrrrrisz!FirewallClientConfigZone.getShortcCs|j|dSrQ)r rkrjrrrrksz!FirewallClientConfigZone.setShortcCs |jSrQ)r rnrIrrrrn!sz'FirewallClientConfigZone.getDescriptioncCs|j|dSrQ)r rprorrrrp%sz'FirewallClientConfigZone.setDescriptioncCs |jSrQ)r rsrIrrrrs+sz"FirewallClientConfigZone.getTargetcCs|j|dSrQ)r rurtrrrru/sz"FirewallClientConfigZone.setTargetcCs |jSrQ)r rxrIrrrrx5sz$FirewallClientConfigZone.getServicescCs|j|dSrQ)r rzryrrrrz9sz$FirewallClientConfigZone.setServicescCs|j|dSrQ)r rr~rrrr=sz#FirewallClientConfigZone.addServicecCs|j|dSrQ)r rr~rrrrAsz&FirewallClientConfigZone.removeServicecCs |j|SrQ)r rr~rrrrEsz%FirewallClientConfigZone.queryServicecCs |jSrQ)r rrIrrrrKsz!FirewallClientConfigZone.getPortscCs|j|dSrQ)r rrrrrrOsz!FirewallClientConfigZone.setPortscCs|j||dSrQ)r rrrrrrSsz FirewallClientConfigZone.addPortcCs|j||dSrQ)r rrrrrrWsz#FirewallClientConfigZone.removePortcCs|j||SrQ)r rrrrrr[sz"FirewallClientConfigZone.queryPortcCs |jSrQ)r rrIrrrrasz%FirewallClientConfigZone.getProtocolscCs|j|dSrQ)r rrrrrresz%FirewallClientConfigZone.setProtocolscCs|j|dSrQ)r rrrrrrisz$FirewallClientConfigZone.addProtocolcCs|j|dSrQ)r rrrrrrmsz'FirewallClientConfigZone.removeProtocolcCs |j|SrQ)r rrrrrrqsz&FirewallClientConfigZone.queryProtocolcCs |jSrQ)r rrIrrrrwsz'FirewallClientConfigZone.getSourcePortscCs|j|dSrQ)r rrrrrr{sz'FirewallClientConfigZone.setSourcePortscCs|j||dSrQ)r rrrrrrsz&FirewallClientConfigZone.addSourcePortcCs|j||dSrQ)r rrrrrrsz)FirewallClientConfigZone.removeSourcePortcCs|j||SrQ)r rrrrrrsz(FirewallClientConfigZone.querySourcePortcCs |jSrQ)r rrIrrrrsz&FirewallClientConfigZone.getIcmpBlockscCs|j|dSrQ)r r)rBZ icmptypesrrrrsz&FirewallClientConfigZone.setIcmpBlockscCs|j|dSrQ)r rrrrrrsz%FirewallClientConfigZone.addIcmpBlockcCs|j|dSrQ)r rrrrrrsz(FirewallClientConfigZone.removeIcmpBlockcCs |j|SrQ)r rrrrrrsz'FirewallClientConfigZone.queryIcmpBlockcCs |jSrQ)r rrIrrrrsz.FirewallClientConfigZone.getIcmpBlockInversioncCs|j|dSrQ)r r)rBZ inversionrrrrsz.FirewallClientConfigZone.setIcmpBlockInversioncCs|jdSrQ)r rrIrrrrsz.FirewallClientConfigZone.addIcmpBlockInversioncCs|jdSrQ)r rrIrrrrsz1FirewallClientConfigZone.removeIcmpBlockInversioncCs |jSrQ)r rrIrrrrsz0FirewallClientConfigZone.queryIcmpBlockInversioncCs|jdSNr4r rrIrrrrsz#FirewallClientConfigZone.getForwardcCs|jd|idSrr rrrrrrsz#FirewallClientConfigZone.setForwardcCs|jddidSNr4Tr rIrrrrsz#FirewallClientConfigZone.addForwardcCs|jddidSNr4Fr rIrrrrsz&FirewallClientConfigZone.removeForwardcCs|jdSrrrIrrrrsz%FirewallClientConfigZone.queryForwardcCs |jSrQ)r rrIrrrrsz&FirewallClientConfigZone.getMasqueradecCs|j|dSrQ)r rrrrrrsz&FirewallClientConfigZone.setMasqueradecCs|jdSrQ)r rrIrrrrsz&FirewallClientConfigZone.addMasqueradecCs|jdSrQ)r rrIrrrrsz)FirewallClientConfigZone.removeMasqueradecCs |jSrQ)r rrIrrrrsz(FirewallClientConfigZone.queryMasqueradecCs |jSrQ)r rrIrrrrsz(FirewallClientConfigZone.getForwardPortscCs|j|dSrQ)r rrrrrrsz(FirewallClientConfigZone.setForwardPortscCs.|dur d}|durd}|j||||dSNr%)r rrBrrtoporttoaddrrrrrs z'FirewallClientConfigZone.addForwardPortcCs.|dur d}|durd}|j||||dSr#)r rr$rrrrs z*FirewallClientConfigZone.removeForwardPortcCs*|dur d}|durd}|j||||Sr#)r rr$rrrrs z)FirewallClientConfigZone.queryForwardPortcCs |jSrQ)r rrIrrrrsz&FirewallClientConfigZone.getInterfacescCs|j|dSrQ)r rrrrrr sz&FirewallClientConfigZone.setInterfacescCs|j|dSrQ)r rrrrrrsz%FirewallClientConfigZone.addInterfacecCs|j|dSrQ)r rrrrrrsz(FirewallClientConfigZone.removeInterfacecCs |j|SrQ)r rrrrrrsz'FirewallClientConfigZone.queryInterfacecCs |jSrQ)r rrIrrrrsz#FirewallClientConfigZone.getSourcescCs|j|dSrQ)r rrrrrr!sz#FirewallClientConfigZone.setSourcescCs|j|dSrQ)r rrrrrr%sz"FirewallClientConfigZone.addSourcecCs|j|dSrQ)r rrrrrr)sz%FirewallClientConfigZone.removeSourcecCs |j|SrQ)r rrrrrr-sz$FirewallClientConfigZone.querySourcecCs |jSrQ)r rrIrrrr3sz%FirewallClientConfigZone.getRichRulescCs|j|dSrQ)r rrrrrr7sz%FirewallClientConfigZone.setRichRulescCs|j|dSrQ)r rrrrrr;sz$FirewallClientConfigZone.addRichRulecCs|j|dSrQ)r rrrrrr?sz'FirewallClientConfigZone.removeRichRulecCs |j|SrQ)r rrrrrrCsz&FirewallClientConfigZone.queryRichRuleN)QrrrrEr#rrrrrrrrrdrfrirkrnrprsrurxrzrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrs2                                                                            rc@s"eZdZedddZeddZeddZedd Zed d Zd d Z eddZ eddZ eddZ eddZ eddZeddZeddZeddZeddZed d!Zed"d#Zed$d%Zed&d'Zed(d)Zed*d+Zed,d-Zed.d/Zed0d1Zed2d3Zed4d5Zed6d7Zed8d9Zed:d;Z edd?Z"ed@dAZ#edBdCZ$edDdEZ%edFdGZ&edHdIZ'edJdKZ(edLdMZ)edNdOZ*edPdQZ+edRdSZ,edTdUZ-edVdWZ.edXdYZ/edZd[Z0ed\d]Z1ed^d_Z2ed`daZ3edbdcZ4edddeZ5edfdgZ6edhdiZ7edjdkZ8edldmZ9edndoZ:edpdqZ;edrdsZedxdyZ?edzd{Z@ed|d}ZAed~dZBeddZCeddZDeddZEdS)FirewallClientPolicySettingsNcCsBdggggdgtgggdgtdd|_gd|_|r>||dS)Nr%F)r( egress_zonesr/r- ingress_zonesr.r,priorityr2 rich_rulesr+r'r3r*r&)r5r5r8r5r5r6r7rCr5r5r5r5r7r5r5)rrr9r;r@r^rrrrEHs& z%FirewallClientPolicySettings.__init__cCsd|j|jfSrFrGrIrrrrJbsz%FirewallClientPolicySettings.__repr__cCs|jSrQrcrIrrrrPfsz,FirewallClientPolicySettings.getSettingsDictcCs|D]}|||j|<qdSrQrcrTrrrr@isz,FirewallClientPolicySettings.setSettingsDictcCsri}t|j|jD]Z\}}|j|}t|turDtj||d||<qt|turdtj||d||<q|||<q|SNrU) rLr9r;rWr=rrXr?rY)rBr9rNr[rOrrrr\ms    z0FirewallClientPolicySettings.getSettingsDbusDictcCs|}dD] }||=q |S)N)r&r'r(r*r`rTrrrraysz7FirewallClientPolicySettings.getRuntimeSettingsDbusDictcCs |jdSNr&rcrIrrrrdsz'FirewallClientPolicySettings.getVersioncCs||jd<dSr-rcrerrrrfsz'FirewallClientPolicySettings.setVersioncCs |jdSNr'rcrIrrrrisz%FirewallClientPolicySettings.getShortcCs||jd<dSr.rcrjrrrrksz%FirewallClientPolicySettings.setShortcCs |jdSNr(rcrIrrrrnsz+FirewallClientPolicySettings.getDescriptioncCs||jd<dSr/rcrorrrrpsz+FirewallClientPolicySettings.setDescriptioncCs |jdSNr*rcrIrrrrssz&FirewallClientPolicySettings.getTargetcCs||jd<dSr0rcrtrrrrusz&FirewallClientPolicySettings.setTargetcCs |jdSNr+rcrIrrrrxsz(FirewallClientPolicySettings.getServicescCs||jd<dSr1rcryrrrrzsz(FirewallClientPolicySettings.setServicescCs0||jdvr |jd|n ttj|dSr1r{r~rrrrsz'FirewallClientPolicySettings.addServicecCs0||jdvr |jd|n ttj|dSr1rr~rrrrsz*FirewallClientPolicySettings.removeServicecCs||jdvSr1rcr~rrrrsz)FirewallClientPolicySettings.queryServicecCs |jdSNr,rcrIrrrrsz%FirewallClientPolicySettings.getPortscCs||jd<dSr2rcrrrrrsz%FirewallClientPolicySettings.setPortscCs@||f|jdvr(|jd||fnttjd||fdSNr,rr{rrrrrs  z$FirewallClientPolicySettings.addPortcCs@||f|jdvr(|jd||fnttjd||fdSr3rrrrrrs  z'FirewallClientPolicySettings.removePortcCs||f|jdvSr2rcrrrrrsz&FirewallClientPolicySettings.queryPortcCs |jdSNr2rcrIrrrrsz)FirewallClientPolicySettings.getProtocolscCs||jd<dSr4rcrrrrrsz)FirewallClientPolicySettings.setProtocolscCs0||jdvr |jd|n ttj|dSr4r{rrrrrsz(FirewallClientPolicySettings.addProtocolcCs0||jdvr |jd|n ttj|dSr4rrrrrrsz+FirewallClientPolicySettings.removeProtocolcCs||jdvSr4rcrrrrrsz*FirewallClientPolicySettings.queryProtocolcCs |jdSNr3rcrIrrrrsz+FirewallClientPolicySettings.getSourcePortscCs||jd<dSr5rcrrrrrsz+FirewallClientPolicySettings.setSourcePortscCs@||f|jdvr(|jd||fnttjd||fdSNr3rr{rrrrrs  z*FirewallClientPolicySettings.addSourcePortcCs@||f|jdvr(|jd||fnttjd||fdSr6rrrrrrs  z-FirewallClientPolicySettings.removeSourcePortcCs||f|jdvSr5rcrrrrrsz,FirewallClientPolicySettings.querySourcePortcCs |jdSNr-rcrIrrrrsz*FirewallClientPolicySettings.getIcmpBlockscCs||jd<dSr7rcrrrrrsz*FirewallClientPolicySettings.setIcmpBlockscCs0||jdvr |jd|n ttj|dSr7r{rrrrrsz)FirewallClientPolicySettings.addIcmpBlockcCs0||jdvr |jd|n ttj|dSr7rrrrrrsz,FirewallClientPolicySettings.removeIcmpBlockcCs||jdvSr7rcrrrrr sz+FirewallClientPolicySettings.queryIcmpBlockcCs |jdSNr.rcrIrrrr sz*FirewallClientPolicySettings.getMasqueradecCs||jd<dSr8rcrrrrrsz*FirewallClientPolicySettings.setMasqueradecCs&|jdsd|jd<n ttjddS)Nr.TrrIrrrrs  z*FirewallClientPolicySettings.addMasqueradecCs&|jdrd|jd<n ttjddS)Nr.FrrIrrrrs  z-FirewallClientPolicySettings.removeMasqueradecCs |jdSr8rcrIrrrrsz,FirewallClientPolicySettings.queryMasqueradecCs |jdSNr/rcrIrrrr#sz,FirewallClientPolicySettings.getForwardPortscCs||jd<dSr9rcrrrrr&sz,FirewallClientPolicySettings.setForwardPortscCsd|dur d}|durd}||||f|jdvrH|jd||||fnttjd||||fdSNr%r/rr{rrrrr)s z+FirewallClientPolicySettings.addForwardPortcCsd|dur d}|durd}||||f|jdvrH|jd||||fnttjd||||fdSr:rrrrrr4s z.FirewallClientPolicySettings.removeForwardPortcCs.|dur d}|durd}||||f|jdvS)Nr%r/rcrrrrr?s z-FirewallClientPolicySettings.queryForwardPortcCs |jdS)Nr+rcrIrrrrGsz)FirewallClientPolicySettings.getRichRulescCsdd|D}||jd<dS)NcSsg|]}tt|dqSrrrrrrrLrz=FirewallClientPolicySettings.setRichRules..r+rcrrrrrJsz)FirewallClientPolicySettings.setRichRulescCs>tt|d}||jdvr.|jd|n ttj|dSNrr+rrrrrrNsz(FirewallClientPolicySettings.addRichRulecCs>tt|d}||jdvr.|jd|n ttj|dSr;rrrrrrUsz+FirewallClientPolicySettings.removeRichRulecCstt|d}||jdvSr;rrrrrr\sz*FirewallClientPolicySettings.queryRichRulecCs |jdSNr)rcrIrrrgetIngressZonesasz,FirewallClientPolicySettings.getIngressZonescCs||jd<dSr<rc)rBr)rrrsetIngressZonesdsz,FirewallClientPolicySettings.setIngressZonescCs0||jdvr |jd|n ttj|dSr<r{rBZ ingress_zonerrraddIngressZonegsz+FirewallClientPolicySettings.addIngressZonecCs0||jdvr |jd|n ttj|dSr<rr?rrrremoveIngressZonemsz.FirewallClientPolicySettings.removeIngressZonecCs||jdvSr<rcr?rrrqueryIngressZonessz-FirewallClientPolicySettings.queryIngressZonecCs |jdSNr(rcrIrrrgetEgressZoneswsz+FirewallClientPolicySettings.getEgressZonescCs||jd<dSrCrc)rBr(rrrsetEgressZoneszsz+FirewallClientPolicySettings.setEgressZonescCs0||jdvr |jd|n ttj|dSrCr{rBZ egress_zonerrr addEgressZone}sz*FirewallClientPolicySettings.addEgressZonecCs0||jdvr |jd|n ttj|dSrCrrFrrrremoveEgressZonesz-FirewallClientPolicySettings.removeEgressZonecCs||jdvSrCrcrFrrrqueryEgressZonesz,FirewallClientPolicySettings.queryEgressZonecCs |jdSNr*rcrIrrr getPrioritysz(FirewallClientPolicySettings.getPrioritycCst||jd<dSrJ)intr9)rBr*rrr setPrioritysz(FirewallClientPolicySettings.setPriority)N)Frrrr#rErJrPr@r\rardrfrirkrnrprsrurxrzrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr=r>r@rArBrDrErGrHrIrKrMrrrrr'Gs                                                                r'c@steZdZddZeddZeddZeddZed d Zed d Z ed dZ eddZ eddZ dS)FirewallClientConfigPolicycCsL||_||_|jtjj||_tj|jtjjd|_ tj|jdd|_ dSr) rrrrrrrrDBUS_INTERFACE_CONFIG_POLICY fw_policyr r rrrrEsz#FirewallClientConfigPolicy.__init__cCst|jtjj|SrQ)rr r rrrOrrrrrsz'FirewallClientConfigPolicy.get_propertycCst|jtjjSrQ)rr rrrrOrIrrrrsz)FirewallClientConfigPolicy.get_propertiescCs|jtjj||dSrQ)r rrrrOrrrrrs z'FirewallClientConfigPolicy.set_propertycCstt|jSrQ)r'rrPrrIrrrrsz&FirewallClientConfigPolicy.getSettingscCs|j|dSrQ)rPrr\r^rrrrsz!FirewallClientConfigPolicy.updatecCs|jdSrQ)rPrrIrrrrsz'FirewallClientConfigPolicy.loadDefaultscCs|jdSrQ)rPrrIrrrrsz!FirewallClientConfigPolicy.removecCs|j|dSrQ)rPrrrrrrsz!FirewallClientConfigPolicy.renameN) rrrrEr#rrrrrrrrrrrrrNs"        rNc@s8eZdZed^ddZeddZeddZedd Zed d Zed d Z eddZ eddZ eddZ eddZ eddZeddZeddZeddZeddZed d!Zed"d#Zed$d%Zed&d'Zed(d)Zed*d+Zed,d-Zed.d/Zed0d1Zed2d3Zed4d5Zed6d7Zed8d9Zed:d;Z edd?Z"ed@dAZ#edBdCZ$edDdEZ%ed_dFdGZ&edHdIZ'edJdKZ(edLdMZ)edNdOZ*edPdQZ+edRdSZ,edTdUZ-edVdWZ.edXdYZ/edZd[Z0ed\d]Z1dS)`FirewallClientServiceSettingsNc Cszdddggiggggg |_gd|_gd|_|rvt|tur`t|D]\}}|||j|<qFnt|turv||dS)Nr%) r&r'r(r,modules destinationr2r3includeshelpers) r5r5r5r7r5ssr5r7r5r5)r9r:r;rWr=r>r?r@rArrrrEs    z&FirewallClientServiceSettings.__init__cCsd|j|jfSrFrGrIrrrrJsz&FirewallClientServiceSettings.__repr__cCs(i}t|j|jD]\}}|||<q|SrQrKrMrrrrPs z-FirewallClientServiceSettings.getSettingsDictcCs$|D]}|||j|j|<qdSrQrRrTrrrr@sz-FirewallClientServiceSettings.setSettingsDictcCsni}t|j|j|jD]R\}}}t|tur@tj||d||<qt|tur`tj ||d||<q|||<q|Sr,rVrZrrrr\s   z1FirewallClientServiceSettings.getSettingsDbusDictcCs |jdSrbrcrIrrrrdsz(FirewallClientServiceSettings.getVersioncCs||jd<dSrbrcrerrrrfsz(FirewallClientServiceSettings.setVersioncCs |jdSrgrcrIrrrrisz&FirewallClientServiceSettings.getShortcCs||jd<dSrgrcrjrrrrksz&FirewallClientServiceSettings.setShortcCs |jdSrlrcrIrrrrnsz,FirewallClientServiceSettings.getDescriptioncCs||jd<dSrlrcrorrrrpsz,FirewallClientServiceSettings.setDescriptioncCs |jdSNrcrIrrrrsz&FirewallClientServiceSettings.getPortscCs||jd<dSrWrcrrrrrsz&FirewallClientServiceSettings.setPortscCs@||f|jdvr(|jd||fnttjd||fdSNrXrr{rrrrr s  z%FirewallClientServiceSettings.addPortcCs@||f|jdvr(|jd||fnttjd||fdSrYrrrrrrs  z(FirewallClientServiceSettings.removePortcCs||f|jdvSrWrcrrrrrsz'FirewallClientServiceSettings.queryPortcCs |jdSrrcrIrrrrsz*FirewallClientServiceSettings.getProtocolscCs||jd<dSrrcrrrrrsz*FirewallClientServiceSettings.setProtocolscCs0||jdvr |jd|n ttj|dSrr{rrrrr"sz)FirewallClientServiceSettings.addProtocolcCs0||jdvr |jd|n ttj|dSrrrrrrr(sz,FirewallClientServiceSettings.removeProtocolcCs||jdvSrrcrrrrr.sz+FirewallClientServiceSettings.queryProtocolcCs |jdSrrcrIrrrr2sz,FirewallClientServiceSettings.getSourcePortscCs||jd<dSrrcrrrrr5sz,FirewallClientServiceSettings.setSourcePortscCs@||f|jdvr(|jd||fnttjd||fdSNrrr{rrrrr8s  z+FirewallClientServiceSettings.addSourcePortcCs@||f|jdvr(|jd||fnttjd||fdSrZrrrrrr?s  z.FirewallClientServiceSettings.removeSourcePortcCs||f|jdvSrrcrrrrrFsz-FirewallClientServiceSettings.querySourcePortcCs |jdSNrqrcrIrrr getModulesJsz(FirewallClientServiceSettings.getModulescCs||jd<dSr[rcrBrRrrr setModulesMsz(FirewallClientServiceSettings.setModulescCs0||jdvr |jd|n ttj|dSr[r{rBmodulerrr addModulePsz'FirewallClientServiceSettings.addModulecCs0||jdvr |jd|n ttj|dSr[rr_rrr removeModuleVsz*FirewallClientServiceSettings.removeModulecCs||jdvSr[rcr_rrr queryModule\sz)FirewallClientServiceSettings.queryModulecCs |jdSrvrcrIrrrgetDestinations`sz-FirewallClientServiceSettings.getDestinationscCs||jd<dSrvrcrBZ destinationsrrrsetDestinationscsz-FirewallClientServiceSettings.setDestinationscCsH||jdvs |jd||kr0||jd|<nttjd||fdSNrwrrrBZ dest_typeaddressrrrsetDestinationfsz,FirewallClientServiceSettings.setDestinationcCs^||jdvrJ|dur<|jd||krsz FirewallClientConfigIPSet.renamecCs |jSrQ)rrdrIrrrrdDsz$FirewallClientConfigIPSet.getVersioncCs|j|dSrQ)rrfrerrrrfHsz$FirewallClientConfigIPSet.setVersioncCs |jSrQ)rrirIrrrriNsz"FirewallClientConfigIPSet.getShortcCs|j|dSrQ)rrkrjrrrrkRsz"FirewallClientConfigIPSet.setShortcCs |jSrQ)rrnrIrrrrnXsz(FirewallClientConfigIPSet.getDescriptioncCs|j|dSrQ)rrprorrrrp\sz(FirewallClientConfigIPSet.setDescriptioncCs |jSrQrrrIrrrrbsz$FirewallClientConfigIPSet.getEntriescCs|j|dSrQrrrrrrrfsz$FirewallClientConfigIPSet.setEntriescCs|j|dSrQrrrrrrrjsz"FirewallClientConfigIPSet.addEntrycCs|j|dSrQrrrrrrrnsz%FirewallClientConfigIPSet.removeEntrycCs |j|SrQ)rrrrrrrrsz$FirewallClientConfigIPSet.queryEntryN)rrrr#rErrrrrrrrrdrfrirkrnrprrrrrrrrrrsP                   rc@seZdZed$ddZeddZeddZedd Zed d Zed d Z eddZ eddZ eddZ eddZ eddZeddZeddZeddZeddZed d!Zed"d#ZdS)%FirewallClientHelperSettingsNcCs"|r ||_ndddddgg|_dSr#rcr^rrrrEysz%FirewallClientHelperSettings.__init__cCsd|j|jfSrFrGrIrrrrJsz%FirewallClientHelperSettings.__repr__cCs |jdSrbrcrIrrrrdsz'FirewallClientHelperSettings.getVersioncCs||jd<dSrbrcrerrrrfsz'FirewallClientHelperSettings.setVersioncCs |jdSrgrcrIrrrrisz%FirewallClientHelperSettings.getShortcCs||jd<dSrgrcrjrrrrksz%FirewallClientHelperSettings.setShortcCs |jdSrlrcrIrrrrnsz+FirewallClientHelperSettings.getDescriptioncCs||jd<dSrlrcrorrrrpsz+FirewallClientHelperSettings.setDescriptioncCs |jdSrWrcrIrrr getFamilysz&FirewallClientHelperSettings.getFamilycCs |durd|jd<||jd<dS)Nr%rXrcrBipvrrr setFamilys z&FirewallClientHelperSettings.setFamilycCs |jdSr[rcrIrrr getModulesz&FirewallClientHelperSettings.getModulecCs||jd<dSr[rcr_rrr setModulesz&FirewallClientHelperSettings.setModulecCs |jdSrvrcrIrrrrsz%FirewallClientHelperSettings.getPortscCs||jd<dSrvrcrrrrrsz%FirewallClientHelperSettings.setPortscCs@||f|jdvr(|jd||fnttjd||fdSrgr{rrrrrs  z$FirewallClientHelperSettings.addPortcCs@||f|jdvr(|jd||fnttjd||fdSrgrrrrrrs  z'FirewallClientHelperSettings.removePortcCs||f|jdvSrvrcrrrrrsz&FirewallClientHelperSettings.queryPort)N)rrrr#rErJrdrfrirkrnrprrrrrrrrrrrrrrxsD                rc@s,eZdZeddZeddZeddZeddZed d Zed d Z ed dZ eddZ eddZ eddZ eddZeddZeddZeddZeddZedd Zed!d"Zed#d$Zed%d&Zed'd(Zed)d*Zed+d,Zed-d.Zed/d0Zd1S)2FirewallClientConfigHelpercCsL||_||_|jtjj||_tj|jtjjd|_ tj|jdd|_ dSr) rrrrrrrrDBUS_INTERFACE_CONFIG_HELPER fw_helperr r rrrrEsz#FirewallClientConfigHelper.__init__cCst|jtjj|SrQ)rr r rrrrrrrrsz'FirewallClientConfigHelper.get_propertycCst|jtjjSrQ)rr rrrrrIrrrrsz)FirewallClientConfigHelper.get_propertiescCs|jtjj||dSrQ)r rrrrrrrrrs z'FirewallClientConfigHelper.set_propertycCsttt|jSrQ)rr=rrrrIrrrrsz&FirewallClientConfigHelper.getSettingscCs|jt|jdSrQ)rrrr9r^rrrrsz!FirewallClientConfigHelper.updatecCs|jdSrQ)rrrIrrrrsz'FirewallClientConfigHelper.loadDefaultscCs|jdSrQ)rrrIrrrrsz!FirewallClientConfigHelper.removecCs|j|dSrQ)rrrrrrrsz!FirewallClientConfigHelper.renamecCs |jSrQ)rrdrIrrrrdsz%FirewallClientConfigHelper.getVersioncCs|j|dSrQ)rrfrerrrrfsz%FirewallClientConfigHelper.setVersioncCs |jSrQ)rrirIrrrrisz#FirewallClientConfigHelper.getShortcCs|j|dSrQ)rrkrjrrrrksz#FirewallClientConfigHelper.setShortcCs |jSrQ)rrnrIrrrrn sz)FirewallClientConfigHelper.getDescriptioncCs|j|dSrQ)rrprorrrrp sz)FirewallClientConfigHelper.setDescriptioncCs |jSrQ)rrrIrrrrsz#FirewallClientConfigHelper.getPortscCs|j|dSrQ)rrrrrrrsz#FirewallClientConfigHelper.setPortscCs|j||dSrQ)rrrrrrrsz"FirewallClientConfigHelper.addPortcCs|j||dSrQ)rrrrrrrsz%FirewallClientConfigHelper.removePortcCs|j||SrQ)rrrrrrr#sz$FirewallClientConfigHelper.queryPortcCs |jSrQ)rrrIrrrr)sz$FirewallClientConfigHelper.getFamilycCs$|dur|jd|j|dSr#)rrrrrrr-s z$FirewallClientConfigHelper.setFamilycCs |jSrQ)rrrIrrrr5sz$FirewallClientConfigHelper.getModulecCs|j|dSrQ)rrr_rrrr9sz$FirewallClientConfigHelper.setModuleN)rrrr#rErrrrrrrrrdrfrirkrnrprrrrrrrrrrrrrrs`                       rc@s6eZdZeddZeddZeddZeddZed d Zed d Z ed dZ eddZ eddZ eddZ eddZeddZeddZeddZeddZedd Zed!d"Zed#d$Zed%d&Zed'd(Zed)d*Zed+d,Zed-d.Zed/d0Zed1d2Zed3d4Zed5d6Zed7d8Zed9d:Z ed;d<Z!ed=d>Z"ed?d@Z#edAdBZ$edCdDZ%edEdFZ&edGdHZ'edIdJZ(edKdLZ)edMdNZ*ed^dPdQZ+edRdSZ,edTdUZ-edVdWZ.edXdYZ/edZd[Z0ed\d]Z1dOS)_FirewallClientConfigServicecCsL||_||_|jtjj||_tj|jtjjd|_ tj|jdd|_ dSr) rrrrrrrrDBUS_INTERFACE_CONFIG_SERVICE fw_servicer r rrrrE@sz$FirewallClientConfigService.__init__cCst|jtjj|SrQ)rr r rrrrrrrrKsz(FirewallClientConfigService.get_propertycCst|jtjjSrQ)rr rrrrrIrrrrPsz*FirewallClientConfigService.get_propertiescCs|jtjj||dSrQ)r rrrrrrrrrUs z(FirewallClientConfigService.set_propertycCstt|jSrQ)rQrrrrIrrrrZsz'FirewallClientConfigService.getSettingscCs|j|dSrQ)rrr\r^rrrr_sz"FirewallClientConfigService.updatecCs|jdSrQ)rrrIrrrrcsz(FirewallClientConfigService.loadDefaultscCs|jdSrQ)rrrIrrrrgsz"FirewallClientConfigService.removecCs|j|dSrQ)rrrrrrrksz"FirewallClientConfigService.renamecCs |jSrQ)rrdrIrrrrdqsz&FirewallClientConfigService.getVersioncCs|j|dSrQ)rrfrerrrrfusz&FirewallClientConfigService.setVersioncCs |jSrQ)rrirIrrrri{sz$FirewallClientConfigService.getShortcCs|j|dSrQ)rrkrjrrrrksz$FirewallClientConfigService.setShortcCs |jSrQ)rrnrIrrrrnsz*FirewallClientConfigService.getDescriptioncCs|j|dSrQ)rrprorrrrpsz*FirewallClientConfigService.setDescriptioncCs |jSrQ)rrrIrrrrsz$FirewallClientConfigService.getPortscCs|j|dSrQ)rrrrrrrsz$FirewallClientConfigService.setPortscCs|j||dSrQ)rrrrrrrsz#FirewallClientConfigService.addPortcCs|j||dSrQ)rrrrrrrsz&FirewallClientConfigService.removePortcCs|j||SrQ)rrrrrrrsz%FirewallClientConfigService.queryPortcCs |jSrQ)rrrIrrrrsz(FirewallClientConfigService.getProtocolscCs|j|dSrQ)rrrrrrrsz(FirewallClientConfigService.setProtocolscCs|j|dSrQ)rrrrrrrsz'FirewallClientConfigService.addProtocolcCs|j|dSrQ)rrrrrrrsz*FirewallClientConfigService.removeProtocolcCs |j|SrQ)rrrrrrrsz)FirewallClientConfigService.queryProtocolcCs |jSrQ)rrrIrrrrsz*FirewallClientConfigService.getSourcePortscCs|j|dSrQ)rrrrrrrsz*FirewallClientConfigService.setSourcePortscCs|j||dSrQ)rrrrrrrsz)FirewallClientConfigService.addSourcePortcCs|j||dSrQ)rrrrrrrsz,FirewallClientConfigService.removeSourcePortcCs|j||SrQ)rrrrrrrsz+FirewallClientConfigService.querySourcePortcCs |jSrQ)rr\rIrrrr\sz&FirewallClientConfigService.getModulescCs|j|dSrQ)rr^r]rrrr^sz&FirewallClientConfigService.setModulescCs|j|dSrQ)rrar_rrrrasz%FirewallClientConfigService.addModulecCs|j|dSrQ)rrbr_rrrrbsz(FirewallClientConfigService.removeModulecCs |j|SrQ)rrcr_rrrrcsz'FirewallClientConfigService.queryModulecCs |jSrQ)rrdrIrrrrdsz+FirewallClientConfigService.getDestinationscCs|j|dSrQ)rrfrerrrrfsz+FirewallClientConfigService.setDestinationscCs |j|SrQ)rgetDestinationrBrSrrrrsz*FirewallClientConfigService.getDestinationcCs|j||dSrQ)rrjrBrSrirrrrjsz*FirewallClientConfigService.setDestinationNcCs:|dur*|||kr*ttjd||f|j|dS)Nr)rrr rrrkrrrrrks z-FirewallClientConfigService.removeDestinationcCs|j||SrQ)rrlrrrrrlsz,FirewallClientConfigService.queryDestinationcCs |jSrQ)rrmrIrrrrmsz'FirewallClientConfigService.getIncludescCs|j|dSrQ)rrornrrrrosz'FirewallClientConfigService.setIncludescCs|j|dSrQ)rrqrprrrrq sz&FirewallClientConfigService.addIncludecCs|j|dSrQ)rrrrprrrrrsz)FirewallClientConfigService.removeIncludecCs |j|SrQ)rrsrprrrrssz(FirewallClientConfigService.queryInclude)N)2rrrr#rErrrrrrrrrdrfrirkrnrprrrrrrrrrrrrrrrr\r^rarbrcrdrfrrjrkrlrmrorqrrrsrrrrr?s                                             rc@seZdZedddZeddZeddZedd Zed d Zed d Z eddZ eddZ eddZ eddZ eddZeddZeddZdS)FirewallClientIcmpTypeSettingsNcCs|r ||_ndddgg|_dSr#rcr^rrrrEsz'FirewallClientIcmpTypeSettings.__init__cCsd|j|jfSrFrGrIrrrrJ#sz'FirewallClientIcmpTypeSettings.__repr__cCs |jdSrbrcrIrrrrd'sz)FirewallClientIcmpTypeSettings.getVersioncCs||jd<dSrbrcrerrrrf*sz)FirewallClientIcmpTypeSettings.setVersioncCs |jdSrgrcrIrrrri.sz'FirewallClientIcmpTypeSettings.getShortcCs||jd<dSrgrcrjrrrrk1sz'FirewallClientIcmpTypeSettings.setShortcCs |jdSrlrcrIrrrrn5sz-FirewallClientIcmpTypeSettings.getDescriptioncCs||jd<dSrlrcrorrrrp8sz-FirewallClientIcmpTypeSettings.setDescriptioncCs |jdSrWrcrIrrrrd<sz.FirewallClientIcmpTypeSettings.getDestinationscCs||jd<dSrWrcrerrrrf?sz.FirewallClientIcmpTypeSettings.setDestinationscCsH|jdsttj|n,||jdvr8|jd|n ttj|dSrW)r9rr r}r|rrrraddDestinationBs  z-FirewallClientIcmpTypeSettings.addDestinationcCs\||jdvr |jd|n8|jdsL|ttddgt|gn ttj|dS)NrXZipv4Zipv6)r9rrfr=setrr rrrrrrkKs  z0FirewallClientIcmpTypeSettings.removeDestinationcCs|jd p||jdvSrWrcrrrrrlVs  z/FirewallClientIcmpTypeSettings.queryDestination)N)rrrr#rErJrdrfrirkrnrprdrfrrkrlrrrrrs4            rc@seZdZeddZeddZeddZeddZed d Zed d Z ed dZ eddZ eddZ eddZ eddZeddZeddZeddZeddZedd Zed!d"Zed#d$Zed%d&Zed'd(Zd)S)*FirewallClientConfigIcmpTypecCsL||_||_|jtjj||_tj|jtjjd|_ tj|jdd|_ dSr) rrrrrrrrDBUS_INTERFACE_CONFIG_ICMPTYPE fw_icmptyper r rrrrE_sz%FirewallClientConfigIcmpType.__init__cCst|jtjj|SrQ)rr r rrrrrrrrjsz)FirewallClientConfigIcmpType.get_propertycCst|jtjjSrQ)rr rrrrrIrrrrosz+FirewallClientConfigIcmpType.get_propertiescCs|jtjj||dSrQ)r rrrrrrrrrts z)FirewallClientConfigIcmpType.set_propertycCsttt|jSrQ)rr=rrrrIrrrrysz(FirewallClientConfigIcmpType.getSettingscCs|jt|jdSrQ)rrrr9r^rrrr~sz#FirewallClientConfigIcmpType.updatecCs|jdSrQ)rrrIrrrrsz)FirewallClientConfigIcmpType.loadDefaultscCs|jdSrQ)rrrIrrrrsz#FirewallClientConfigIcmpType.removecCs|j|dSrQ)rrrrrrrsz#FirewallClientConfigIcmpType.renamecCs |jSrQ)rrdrIrrrrdsz'FirewallClientConfigIcmpType.getVersioncCs|j|dSrQ)rrfrerrrrfsz'FirewallClientConfigIcmpType.setVersioncCs |jSrQ)rrirIrrrrisz%FirewallClientConfigIcmpType.getShortcCs|j|dSrQ)rrkrjrrrrksz%FirewallClientConfigIcmpType.setShortcCs |jSrQ)rrnrIrrrrnsz+FirewallClientConfigIcmpType.getDescriptioncCs|j|dSrQ)rrprorrrrpsz+FirewallClientConfigIcmpType.setDescriptioncCs |jSrQ)rrdrIrrrrdsz,FirewallClientConfigIcmpType.getDestinationscCs|j|dSrQ)rrfrerrrrfsz,FirewallClientConfigIcmpType.setDestinationscCs|j|dSrQ)rrrrrrrsz+FirewallClientConfigIcmpType.addDestinationcCs|j|dSrQ)rrkrrrrrksz.FirewallClientConfigIcmpType.removeDestinationcCs |j|SrQ)rrlrrrrrlsz-FirewallClientConfigIcmpType.queryDestinationN)rrrr#rErrrrrrrrrdrfrirkrnrprdrfrrkrlrrrrr^sP                   rc@seZdZed.ddZeddZeddZedd Zed d Zed d Z eddZ eddZ eddZ eddZ eddZeddZeddZeddZeddZed d!Zed"d#Zed$d%Zed&d'Zed(d)Zed*d+Zed,d-ZdS)/'FirewallClientPoliciesLockdownWhitelistNcCs|r ||_nggggg|_dSrQrcr^rrrrEsz0FirewallClientPoliciesLockdownWhitelist.__init__cCsd|j|jfSrFrGrIrrrrJsz0FirewallClientPoliciesLockdownWhitelist.__repr__cCs |jdSrbrcrIrrr getCommandssz3FirewallClientPoliciesLockdownWhitelist.getCommandscCs||jd<dSrbrc)rBZcommandsrrr setCommandssz3FirewallClientPoliciesLockdownWhitelist.setCommandscCs"||jdvr|jd|dSrbr9r|rBZcommandrrr addCommandsz2FirewallClientPoliciesLockdownWhitelist.addCommandcCs"||jdvr|jd|dSrbr9rrrrr removeCommandsz5FirewallClientPoliciesLockdownWhitelist.removeCommandcCs||jdvSrbrcrrrr queryCommandsz4FirewallClientPoliciesLockdownWhitelist.queryCommandcCs |jdSrgrcrIrrr getContextssz3FirewallClientPoliciesLockdownWhitelist.getContextscCs||jd<dSrgrc)rBZcontextsrrr setContextssz3FirewallClientPoliciesLockdownWhitelist.setContextscCs"||jdvr|jd|dSrgrrBcontextrrr addContextsz2FirewallClientPoliciesLockdownWhitelist.addContextcCs"||jdvr|jd|dSrgrrrrr removeContextsz5FirewallClientPoliciesLockdownWhitelist.removeContextcCs||jdvSrgrcrrrr queryContextsz4FirewallClientPoliciesLockdownWhitelist.queryContextcCs |jdSrlrcrIrrrgetUserssz0FirewallClientPoliciesLockdownWhitelist.getUserscCs||jd<dSrlrc)rBZusersrrrsetUserssz0FirewallClientPoliciesLockdownWhitelist.setUserscCs"||jdvr|jd|dSrlrrBuserrrraddUsersz/FirewallClientPoliciesLockdownWhitelist.addUsercCs"||jdvr|jd|dSrlrrrrr removeUsersz2FirewallClientPoliciesLockdownWhitelist.removeUsercCs||jdvSrlrcrrrr queryUser sz1FirewallClientPoliciesLockdownWhitelist.queryUsercCs |jdSrWrcrIrrrgetUids sz/FirewallClientPoliciesLockdownWhitelist.getUidscCs||jd<dSrWrcrBZuidsrrrsetUids sz/FirewallClientPoliciesLockdownWhitelist.setUidscCs"||jdvr|jd|dSrWrrBuidrrraddUid sz.FirewallClientPoliciesLockdownWhitelist.addUidcCs"||jdvr|jd|dSrWrrrrr removeUid sz1FirewallClientPoliciesLockdownWhitelist.removeUidcCs||jdvSrWrcrrrrqueryUid sz0FirewallClientPoliciesLockdownWhitelist.queryUid)N)rrrr#rErJrrrrrrrrrrrrrrrrrrrrrrrrrsX                     rc@seZdZeddZeddZeddZeddZed d Zed d Z ed dZ eddZ eddZ eddZ eddZeddZeddZeddZeddZedd Zed!d"Zed#d$Zed%d&Zed'd(Zd)S)*FirewallClientConfigPoliciescCs8||_|jtjjtjj|_tj|jtjjd|_ dSNr) rrrrrDBUS_PATH_CONFIGrrDBUS_INTERFACE_CONFIG_POLICIES fw_policiesrBrrrrrE s z%FirewallClientConfigPolicies.__init__cCsttt|jSrQ)rr=rrgetLockdownWhitelistrIrrrr% sz1FirewallClientConfigPolicies.getLockdownWhitelistcCs|jt|jdSrQ)rsetLockdownWhitelistrr9r^rrrr* sz1FirewallClientConfigPolicies.setLockdownWhitelistcCs|j|dSrQraddLockdownWhitelistCommandrrrrr0 sz8FirewallClientConfigPolicies.addLockdownWhitelistCommandcCs|j|dSrQrremoveLockdownWhitelistCommandrrrrr4 sz;FirewallClientConfigPolicies.removeLockdownWhitelistCommandcCst|j|SrQrrqueryLockdownWhitelistCommandrrrrr8 sz:FirewallClientConfigPolicies.queryLockdownWhitelistCommandcCst|jSrQrrgetLockdownWhitelistCommandsrIrrrr< sz9FirewallClientConfigPolicies.getLockdownWhitelistCommandscCs|j|dSrQraddLockdownWhitelistContextrrrrrB sz8FirewallClientConfigPolicies.addLockdownWhitelistContextcCs|j|dSrQrremoveLockdownWhitelistContextrrrrrF sz;FirewallClientConfigPolicies.removeLockdownWhitelistContextcCst|j|SrQrrqueryLockdownWhitelistContextrrrrrJ sz:FirewallClientConfigPolicies.queryLockdownWhitelistContextcCst|jSrQrrgetLockdownWhitelistContextsrIrrrrN sz9FirewallClientConfigPolicies.getLockdownWhitelistContextscCs|j|dSrQraddLockdownWhitelistUserrrrrrT sz5FirewallClientConfigPolicies.addLockdownWhitelistUsercCs|j|dSrQrremoveLockdownWhitelistUserrrrrrX sz8FirewallClientConfigPolicies.removeLockdownWhitelistUsercCst|j|SrQrrqueryLockdownWhitelistUserrrrrr\ sz7FirewallClientConfigPolicies.queryLockdownWhitelistUsercCst|jSrQrrgetLockdownWhitelistUsersrIrrrr` sz6FirewallClientConfigPolicies.getLockdownWhitelistUserscCst|jSrQrrgetLockdownWhitelistUidsrIrrrrf sz5FirewallClientConfigPolicies.getLockdownWhitelistUidscCs|j|dSrQ)rsetLockdownWhitelistUidsrrrrrj sz5FirewallClientConfigPolicies.setLockdownWhitelistUidscCs|j|dSrQraddLockdownWhitelistUidrrrrrn sz4FirewallClientConfigPolicies.addLockdownWhitelistUidcCs|j|dSrQrremoveLockdownWhitelistUidrrrrrr sz7FirewallClientConfigPolicies.removeLockdownWhitelistUidcCst|j|SrQrrqueryLockdownWhitelistUidrrrrrv sz6FirewallClientConfigPolicies.queryLockdownWhitelistUidN)rrrr#rErrrrrrrrrrrrrrrrrrrrrrrr sP                   rc@seZdZed.ddZeddZeddZedd Zed d Zed d Z eddZ eddZ eddZ eddZ eddZeddZeddZeddZeddZed d!Zed"d#Zed$d%Zed&d'Zed(d)Zed*d+Zed,d-ZdS)/FirewallClientDirectNcCs|r ||_n gggg|_dSrQrcr^rrrrE} szFirewallClientDirect.__init__cCsd|j|jfSrFrGrIrrrrJ szFirewallClientDirect.__repr__cCs |jdSrbrcrIrrr getAllChains sz!FirewallClientDirect.getAllChainscsfdd|jdDS)Ncs,g|]$}|dkr|dkr|dqS)rrhrmrrrrtablerrr sz2FirewallClientDirect.getChains..rrcrBrrrrr getChains szFirewallClientDirect.getChainscCs||jd<dSrbrc)rBZchainsrrr setAllChains sz!FirewallClientDirect.setAllChainscCs,|||f}||jdvr(|jd|dSrbrrBrrchainidxrrraddChain s zFirewallClientDirect.addChaincCs,|||f}||jdvr(|jd|dSrbrrrrr removeChain s z FirewallClientDirect.removeChaincCs|||f}||jdvSrbrcrrrr queryChain s zFirewallClientDirect.queryChaincCs |jdSrgrcrIrrr getAllRules sz FirewallClientDirect.getAllRulescsfdd|jdDS)Ncs<g|]4}|dkr|dkr|dkr|ddqS)rrhrmrXNrrrrrrrr s z1FirewallClientDirect.getRules..rhrcrBrrrrrrgetRules szFirewallClientDirect.getRulescCs||jd<dSrgrcrrrr setAllRules sz FirewallClientDirect.setAllRulescCs0|||||f}||jdvr,|jd|dSrgrrBrrrr*rrrrraddRule szFirewallClientDirect.addRulecCs0|||||f}||jdvr,|jd|dSrgrr rrr removeRule szFirewallClientDirect.removeRulecCsLt|jdD]8}|d|kr|d|kr|d|kr|jd|qdS)Nrhrrm)r=r9rrrrr removeRules s$z FirewallClientDirect.removeRulescCs|||||f}||jdvSrgrcr rrr queryRule szFirewallClientDirect.queryRulecCs |jdSrlrcrIrrrgetAllPassthroughs sz'FirewallClientDirect.getAllPassthroughscCs||jd<dSrlrc)rBZ passthroughsrrrsetAllPassthroughs sz'FirewallClientDirect.setAllPassthroughscCsg|jd<dSrlrcrIrrrremoveAllPassthroughs sz*FirewallClientDirect.removeAllPassthroughscsfdd|jdDS)Ncs g|]}|dkr|dqS)rrhrrrrrr s z8FirewallClientDirect.getPassthroughs..rmrcrrrrgetPassthroughs sz$FirewallClientDirect.getPassthroughscCs*||f}||jdvr&|jd|dSrlrrBrrrrrraddPassthrough sz#FirewallClientDirect.addPassthroughcCs*||f}||jdvr&|jd|dSrlrrrrrremovePassthrough sz&FirewallClientDirect.removePassthroughcCs||f}||jdvSrlrcrrrrqueryPassthrough sz%FirewallClientDirect.queryPassthrough)N)rrrr#rErJrrrrrrrr r r r rrrrrrrrrrrrrr| sX                     rc@seZdZeddZeddZeddZeddZed d Zed d Z ed dZ eddZ eddZ eddZ eddZeddZeddZeddZeddZedd Zed!d"Zed#d$Zed%d&Zd'S)(FirewallClientConfigDirectcCs8||_|jtjjtjj|_tj|jtjjd|_ dSr) rrrrrrrrDBUS_INTERFACE_CONFIG_DIRECT fw_directrrrrrE s z#FirewallClientConfigDirect.__init__cCsttt|jSrQ)rr=rrrrIrrrr sz&FirewallClientConfigDirect.getSettingscCs|jt|jdSrQ)rrrr9r^rrrr sz!FirewallClientConfigDirect.updatecCs|j|||dSrQrrrrrrr sz#FirewallClientConfigDirect.addChaincCs|j|||dSrQrrrrrrr sz&FirewallClientConfigDirect.removeChaincCst|j|||SrQrrrrrrrr sz%FirewallClientConfigDirect.queryChaincCst|j||SrQrrrrrrrr sz$FirewallClientConfigDirect.getChainscCst|jSrQrrrrIrrrr sz'FirewallClientConfigDirect.getAllChainscCs|j|||||dSrQrr rBrrrr*rrrrr  sz"FirewallClientConfigDirect.addRulecCs|j|||||dSrQrr r"rrrr  sz%FirewallClientConfigDirect.removeRulecCs|j|||dSrQrrrrrrr sz&FirewallClientConfigDirect.removeRulescCst|j|||||SrQrrrr"rrrr sz$FirewallClientConfigDirect.queryRulecCst|j|||SrQrrr rrrrr  sz#FirewallClientConfigDirect.getRulescCst|jSrQrrrrIrrrr sz&FirewallClientConfigDirect.getAllRulescCs|j||dSrQrrrBrrrrrr# sz)FirewallClientConfigDirect.addPassthroughcCs|j||dSrQrrr)rrrr' sz,FirewallClientConfigDirect.removePassthroughcCst|j||SrQrrrr)rrrr+ sz+FirewallClientConfigDirect.queryPassthroughcCst|j|SrQrrrrrrrr/ sz*FirewallClientConfigDirect.getPassthroughscCst|jSrQrrrrIrrrr3 sz-FirewallClientConfigDirect.getAllPassthroughsN)rrrr#rErrrrrrrr r rrr rrrrrrrrrrr sL                  rc@seZdZeddZeddZeddZeddZed d Zed d Z ed dZ eddZ eddZ eddZ eddZeddZeddZeddZeddZedd Zed!d"Zed#d$Zed%d&Zed'd(Zed)d*Zed+d,Zed-d.Zed/d0Zed1d2Zed3d4Zed5d6Zed7d8Zed9d:Z ed;d<Z!ed=d>Z"ed?d@Z#edAdBZ$edCdDZ%edEdFZ&edGdHZ'edIdJZ(edKdLZ)dMS)NFirewallClientConfigcCsb||_|jtjjtjj|_tj|jtjjd|_ tj|jdd|_ t |j|_ t |j|_dSr)rrrrrrrrDBUS_INTERFACE_CONFIG fw_configr r _policiesr_directrrrrrE: s  zFirewallClientConfig.__init__cCst|jtjj|SrQ)rr r rrr/rrrrrI sz!FirewallClientConfig.get_propertycCst|jtjjSrQ)rr rrrr/rIrrrrN sz#FirewallClientConfig.get_propertiescCs|jtjj||dSrQ)r rrrr/rrrrrS sz!FirewallClientConfig.set_propertycCst|jSrQ)rr0 getIPSetNamesrIrrrr3Y sz"FirewallClientConfig.getIPSetNamescCst|jSrQ)rr0 listIPSetsrIrrrr4] szFirewallClientConfig.listIPSetscCs t|j|SrQ)rrrBrrrrgetIPSeta szFirewallClientConfig.getIPSetcCst|j|}t|j|SrQ)rr0getIPSetByNamerrrBrrrrrr7e sz#FirewallClientConfig.getIPSetByNamecCs>t|tr |j|t|j}n|j|t|}t|j|SrQ)r<r{r0addIPSetrr9rrrBrr9rrrrr9j s zFirewallClientConfig.addIPSetcCst|jSrQ)rr0 getZoneNamesrIrrrr;t sz!FirewallClientConfig.getZoneNamescCst|jSrQ)rr0 listZonesrIrrrr<x szFirewallClientConfig.listZonescCs t|j|SrQ)rrr5rrrgetZone| szFirewallClientConfig.getZonecCst|j|}t|j|SrQ)rr0 getZoneByNamerrr8rrrr> sz"FirewallClientConfig.getZoneByNamecCst|j|SrQ)rr0getZoneOfInterface)rBZifacerrrr? sz'FirewallClientConfig.getZoneOfInterfacecCst|j|SrQ)rr0getZoneOfSourcerrrrr@ sz$FirewallClientConfig.getZoneOfSourcecCs^t|tr|j||}n4t|tr8|j||}n|j|t|dd}t|j |Sr) r<r$r0ZaddZone2r\r?addZonerrrr:rrrrA s   zFirewallClientConfig.addZonecCst|jSrQ)rr0getPolicyNamesrIrrrrB sz#FirewallClientConfig.getPolicyNamescCst|jSrQ)rr0 listPoliciesrIrrrrC sz!FirewallClientConfig.listPoliciescCs t|j|SrQ)rNrr5rrr getPolicy szFirewallClientConfig.getPolicycCst|j|}t|j|SrQ)rr0getPolicyByNamerNrr8rrrrE sz$FirewallClientConfig.getPolicyByNamecCs8t|tr|j||}n|j||}t|j|SrQ)r<r'r0 addPolicyr\rNrr:rrrrF s zFirewallClientConfig.addPolicycCst|jSrQ)rr0getServiceNamesrIrrrrG sz$FirewallClientConfig.getServiceNamescCst|jSrQ)rr0 listServicesrIrrrrH sz!FirewallClientConfig.listServicescCs t|j|SrQ)rrr5rrr getService szFirewallClientConfig.getServicecCst|j|}t|j|SrQ)rr0getServiceByNamerrr8rrrrJ sz%FirewallClientConfig.getServiceByNamecCs`t|tr|j||}n6t|tur:|j||}n|j|t|dd}t |j |Sr) r<rQr0Z addService2r\rWr?rrrrr:rrrr s   zFirewallClientConfig.addServicecCst|jSrQ)rr0getIcmpTypeNamesrIrrrrK sz%FirewallClientConfig.getIcmpTypeNamescCst|jSrQ)rr0 listIcmpTypesrIrrrrL sz"FirewallClientConfig.listIcmpTypescCs t|j|SrQ)rrr5rrr getIcmpType sz FirewallClientConfig.getIcmpTypecCst|j|}t|j|SrQ)rr0getIcmpTypeByNamerrr8rrrrN sz&FirewallClientConfig.getIcmpTypeByNamecCs>t|tr |j|t|j}n|j|t|}t|j|SrQ)r<rr0 addIcmpTyperr9rrr:rrrrO s z FirewallClientConfig.addIcmpTypecCs|jSrQ)r1rIrrrpolicies szFirewallClientConfig.policiescCs|jSrQ)r2rIrrrdirect szFirewallClientConfig.directcCst|jSrQ)rr0getHelperNamesrIrrrrR sz#FirewallClientConfig.getHelperNamescCst|jSrQ)rr0 listHelpersrIrrrrS sz FirewallClientConfig.listHelperscCs t|j|SrQ)rrr5rrr getHelper szFirewallClientConfig.getHelpercCst|j|}t|j|SrQ)rr0getHelperByNamerrr8rrrrU sz$FirewallClientConfig.getHelperByNamecCs>t|tr |j|t|j}n|j|t|}t|j|SrQ)r<rr0rxrr9rrr:rrrrx s zFirewallClientConfig.addHelperN)*rrrr#rErrrr3r4r6r7r9r;r<r=r>r?r@rArBrCrDrErFrGrHrIrJrrKrLrMrNrOrPrQrRrSrTrUrxrrrrr.9 s                                     r.c@seZdZedddZeddZedd Zed d Zed d ZeddZ eddZ eddZ eddZ eddZ eddZeddZeddZeddZed d!Zed"d#Zed$d%Zed&d'Zed(d)Zed*d+Zed,d-Zed.d/Zed0d1Zed2d3Zed4d5Zed6d7Zed8d9Zed:d;Zedd?Z!ed@dAZ"edBdCZ#edDdEZ$edFdGZ%edHdIZ&edJdKZ'edLdMZ(edNdOZ)edPdQZ*edRdSZ+edTdUZ,edVdWZ-edXdYZ.edZd[Z/ed\d]Z0ed^d_Z1ed`daZ2edbdcZ3edddeZ4edfdgZ5edhdiZ6edjdkZ7edldmZ8edndoZ9edpdqZ:edrdsZ;edtduZedzd{Z?ed|d}Z@ed~dZAeddZBeddZCeddZDedddZEeddZFeddZGeddZHedddZIeddZJeddZKeddZLedddZMeddZNeddZOeddZPed ddZQeddZReddZSeddZTeddZUeddZVeddZWed!ddZXeddZYeddZZed"ddZ[eddZ\eddZ]eddZ^ed#ddZ_eddZ`eddZaeddZbed$ddÄZceddńZdeddDŽZeeddɄZfedd˄Zgedd̈́ZheddτZieddфZjeddӄZkeddՄZleddׄZmeddلZneddۄZoedd݄Zpedd߄ZqeddZreddZseddZteddZueddZveddZweddZxeddZyeddZzeddZ{eddZ|eddZ}eddZ~eddZeddZeddZeddZeddZeddZeddZedd Zed d Zed d ZeddZeddZeddZeddZeddZeddZeddZdS(%FirewallClientNrTcPCs|s^tjjjddzt|_WqdtjjyZ}ztt j | WYd}~qdd}~00n||_|jj |j ddtjjdtjjtjjtjjtjjtjjtjjtjjtjjtjjtjjtjjtjjtjjtjjtjjfD]}|jj |j|dddd qi|_d d d d ddddddddddddddddddd d!d"d#d$d%d&d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;dd?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXO|_ |!||_"|dYkrt#$||j%n|%dS)ZNT)Zset_as_defaultZNameOwnerChangedzorg.freedesktop.DBus)Zhandler_functionZ signal_namerZarg0rmemberr)rZinterface_keywordZmember_keywordZ path_keywordconnection-changedconnection-establishedconnection-lostZLogDeniedChangedZDefaultZoneChangedZPanicModeEnabledZPanicModeDisabledZReloadedZ ServiceAddedZServiceRemovedZ PortAddedZ PortRemovedZSourcePortAddedZSourcePortRemovedZ ProtocolAddedZProtocolRemovedZMasqueradeAddedZMasqueradeRemovedZForwardPortAddedZForwardPortRemovedZIcmpBlockAddedZIcmpBlockRemovedZIcmpBlockInversionAddedZIcmpBlockInversionRemovedZ RichRuleAddedZRichRuleRemovedZInterfaceAddedZInterfaceRemovedZZoneOfInterfaceChangedZ SourceAddedZ SourceRemovedZZoneOfSourceChangedZ ZoneUpdatedZ PolicyUpdatedZ EntryAddedZ EntryRemovedZ ChainAddedZ ChainRemovedZ RuleAddedZ RuleRemovedZPassthroughAddedZPassthroughRemovedzconfig:direct:UpdatedZLockdownEnabledZLockdownDisabledZLockdownWhitelistCommandAddedZLockdownWhitelistCommandRemovedZLockdownWhitelistContextAddedZLockdownWhitelistContextRemovedZLockdownWhitelistUidAddedZLockdownWhitelistUidRemovedZLockdownWhitelistUserAddedZLockdownWhitelistUserRemovedz(config:policies:LockdownWhitelistUpdatedzconfig:IPSetAddedzconfig:IPSetUpdatedzconfig:IPSetRemovedzconfig:IPSetRenamedzconfig:ZoneAddedzconfig:ZoneUpdatedzconfig:ZoneRemovedzconfig:ZoneRenamedzconfig:PolicyAddedzconfig:PolicyUpdatedzconfig:PolicyRemovedzconfig:PolicyRenamedzconfig:ServiceAddedzconfig:ServiceUpdatedzconfig:ServiceRemovedzconfig:ServiceRenamedzconfig:IcmpTypeAddedzconfig:IcmpTypeUpdatedzconfig:IcmpTypeRemovedzconfig:IcmpTypeRenamedzconfig:HelperAddedzconfig:HelperUpdatedzconfig:HelperRemovedzconfig:HelperRenamed)OrXrYrZzlog-denied-changedzdefault-zone-changedzpanic-mode-enabledzpanic-mode-disabledZreloadedz service-addedzservice-removedz port-addedz port-removedzsource-port-addedzsource-port-removedzprotocol-addedzprotocol-removedzmasquerade-addedzmasquerade-removedzforward-port-addedzforward-port-removedzicmp-block-addedzicmp-block-removedzicmp-block-inversion-addedzicmp-block-inversion-removedzrichrule-addedzrichrule-removedzinterface-addedzinterface-removedz zone-changedzzone-of-interface-changedz source-addedzsource-removedzzone-of-source-changedz zone-updatedzpolicy-updatedzipset-entry-addedzipset-entry-removedzdirect:chain-addedzdirect:chain-removedzdirect:rule-addedzdirect:rule-removedzdirect:passthrough-addedzdirect:passthrough-removedzconfig:direct:updatedzlockdown-enabledzlockdown-disabledz lockdown-whitelist-command-addedz"lockdown-whitelist-command-removedz lockdown-whitelist-context-addedz"lockdown-whitelist-context-removedzlockdown-whitelist-uid-addedzlockdown-whitelist-uid-removedzlockdown-whitelist-user-addedzlockdown-whitelist-user-removedz*config:policies:lockdown-whitelist-updatedzconfig:ipset-addedzconfig:ipset-updatedzconfig:ipset-removedzconfig:ipset-renamedzconfig:zone-addedzconfig:zone-updatedzconfig:zone-removedzconfig:zone-renamedzconfig:policy-addedzconfig:policy-updatedzconfig:policy-removedzconfig:policy-renamedzconfig:service-addedzconfig:service-updatedzconfig:service-removedzconfig:service-renamedzconfig:icmptype-addedzconfig:icmptype-updatedzconfig:icmptype-removedzconfig:icmptype-renamedzconfig:helper-addedzconfig:helper-updatedzconfig:helper-removedzconfig:helper-renamedr)&rZmainloopZglibZ DBusGMainLoopZ SystemBusrrrrr Z DBUS_ERRORrZadd_signal_receiver_dbus_connection_changedrrDBUS_INTERFACE_IPSETDBUS_INTERFACE_ZONEDBUS_INTERFACE_POLICYDBUS_INTERFACE_DIRECTDBUS_INTERFACE_POLICIESr/rr rOrrrrr_signal_receiver _callback _callbacks _init_varsquietrZtimeout_add_seconds_connection_established)rBrwaitrerrrrrrE s Y zFirewallClient.__init__cCs:d|_d|_d|_d|_d|_d|_d|_d|_d|_dS)NF) fwrr rPrrr _config connectedrIrrrrd szFirewallClient._init_varscCstSrQrrIrrrgetExceptionHandler sz"FirewallClient.getExceptionHandlercCs|adSrQrk)rBZhandlerrrrsetExceptionHandler sz"FirewallClient.setExceptionHandlercCstSrQrrIrrrgetNotAuthorizedLoop sz#FirewallClient.getNotAuthorizedLoopcCs|adSrQrn)rBenablerrrsetNotAuthorizedLoop sz#FirewallClient.setNotAuthorizedLoopcGs0||jvr ||f|j|j|<n td|dS)NzUnknown callback name '%s')rcrb ValueError)rBrcallbackrrrrconnect s zFirewallClient.connectcCs*|tjjkrdS|r|n|dSrQ)rrrrf_connection_lost)rBrZ old_ownerZ new_ownerrrrr[ s   z'FirewallClient._dbus_connection_changedc Csdz|jtjjtjj|_tj|jtjjd|_tj|jtjj d|_ tj|jtjj d|_ tj|jtjj d|_tj|jtjjd|_tj|jtjjd|_tj|jdd|_Wnvtjjy}z"|jstd|WYd}~dSd}~0ty(}z |jstd|WYd}~dSd}~00t|j|_d|_|jdtjjd|jdtjjddS) NrrrrTrYrWrrX)rrrrrZ DBUS_PATHrrrhr\rr]r r^rPr_rr`rr rrreprintrrr.rirjra)rBrrrrrf sX      z&FirewallClient._connection_establishedcCs0||jdtjjd|jdtjjddS)NrZrvrX)rdrarrrrIrrrru szFirewallClient._connection_lostc Osd|vsd|vrdS|d}|d}|tjjr:d|}|tjjrRd|}n|tjjrjd|}n|tjjrd|}np|tjjrd|}nX|tjjrd|}n@|tjj krd |}n*|tjj krd |}n|tjj krd |}d}|j D]2}|j ||kr|j ||j vr|j |j |}q|dur>dSd d |D}z(|drf||d|d|Wn.ty}zt|WYd}~n d}~00dS)NrWrz config:Zonez config:Policyz config:IPSetzconfig:Servicezconfig:IcmpTypez config:Helperzconfig:zconfig:policies:zconfig:direct:cSsg|] }t|qSrr)rargrrrr% rz3FirewallClient._signal_receiver..rhr) startswithrrr rOrrrrr/rrrcrbextendrrw) rBrrsignalrcbrsZcb_argsmsgrrrra sJ             zFirewallClient._signal_receivercCs|jSrQ)rirIrrrr/ szFirewallClient.configcCs|jdSrQ)rhreloadrIrrrr~3 szFirewallClient.reloadcCs|jdSrQ)rhresetToDefaultsrIrrrr7 szFirewallClient.resetToDefaultscCs|jdSrQ)rhZcompleteReloadrIrrrcomplete_reload; szFirewallClient.complete_reloadcCs|jdSrQ)rhruntimeToPermanentrIrrrr? sz!FirewallClient.runtimeToPermanentcCs|jdSrQ)rhcheckPermanentConfigrIrrrrC sz#FirewallClient.checkPermanentConfigcCst|jtjj|SrQ)rr r rrrrrrrrG szFirewallClient.get_propertycCst|jtjjSrQ)rr rrrrrIrrrrL szFirewallClient.get_propertiescCs|jtjj||dSrQ)r rrrrrrrrrQ szFirewallClient.set_propertycCs|jdSrQ)rhenablePanicModerIrrrrW szFirewallClient.enablePanicModecCs|jdSrQ)rhdisablePanicModerIrrrr[ szFirewallClient.disablePanicModecCst|jSrQ)rrhqueryPanicModerIrrrr_ szFirewallClient.queryPanicModecCstt|j|SrQ)r$rr getZoneSettings2rBzonerrrgetZoneSettingse szFirewallClient.getZoneSettingscCst|jSrQ)rr getIPSetsrIrrrri szFirewallClient.getIPSetscCsttt|j|SrQ)r{r=rrgetIPSetSettingsrBipsetrrrrm s zFirewallClient.getIPSetSettingscCs|j||dSrQrrBrrrrrrr szFirewallClient.addEntrycCs |j|SrQrrrrrrv szFirewallClient.getEntriescCs|j||SrQr)rBrrrrrrz szFirewallClient.setEntriescCs|j||dSrQrrrrrr~ szFirewallClient.removeEntrycCst|j||SrQ)rrrrrrrr szFirewallClient.queryEntrycCst|jSrQ)rrhrHrIrrrrH szFirewallClient.listServicescCstt|j|SrQ)rQrrhZgetServiceSettings2r~rrrgetServiceSettings s z!FirewallClient.getServiceSettingscCst|jSrQ)rrhrLrIrrrrL szFirewallClient.listIcmpTypescCsttt|j|SrQ)rr=rrhgetIcmpTypeSettingsrrrrr s z"FirewallClient.getIcmpTypeSettingscCst|jSrQ)rrhrtrIrrrrt szFirewallClient.getHelperscCsttt|j|SrQ)rr=rrhgetHelperSettingsrvrrrr s z FirewallClient.getHelperSettingscCst|jSrQ)rrhgetAutomaticHelpersrIrrrr sz"FirewallClient.getAutomaticHelperscCs|j|dSrQ)rhsetAutomaticHelpersrBrOrrrr sz"FirewallClient.setAutomaticHelperscCst|jSrQ)rrh getLogDeniedrIrrrr szFirewallClient.getLogDeniedcCs|j|dSrQ)rh setLogDeniedrrrrr szFirewallClient.setLogDeniedcCst|jSrQ)rrhgetDefaultZonerIrrrr szFirewallClient.getDefaultZonecCs|j|dSrQ)rhsetDefaultZonerrrrr szFirewallClient.setDefaultZonecCs|j||dSrQ)r setZoneSettings2ra)rBrr9rrrsetZoneSettings szFirewallClient.setZoneSettingscCst|jSrQ)rr getZonesrIrrrr szFirewallClient.getZonescCst|jSrQ)rr getActiveZonesrIrrrr szFirewallClient.getActiveZonescCst|j|SrQ)rr r?rrrrr? sz!FirewallClient.getZoneOfInterfacecCst|j|SrQ)rr r@rrrrr@ szFirewallClient.getZoneOfSourcecCst|j|SrQ)rr  isImmutablerrrrr szFirewallClient.isImmutablecCstt|j|SrQ)r'rrPgetPolicySettingsrBpolicyrrrr sz FirewallClient.getPolicySettingscCs|j||dSrQ)rPsetPolicySettingsra)rBrr9rrrr sz FirewallClient.setPolicySettingscCst|jSrQ)rrP getPoliciesrIrrrr szFirewallClient.getPoliciescCst|jSrQ)rrPgetActivePoliciesrIrrrr sz FirewallClient.getActivePoliciescCst|j|SrQ)rrPrrrrrisPolicyImmutable sz FirewallClient.isPolicyImmutablecCst|j||SrQ)rr rrBrrrrrr szFirewallClient.addInterfacecCst|j||SrQ)rr  changeZonerrrrr szFirewallClient.changeZonecCst|j||SrQ)rr changeZoneOfInterfacerrrrr s z$FirewallClient.changeZoneOfInterfacecCst|j|SrQ)rr rrrrrr szFirewallClient.getInterfacescCst|j||SrQ)rr rrrrrr szFirewallClient.queryInterfacecCst|j||SrQ)rr rrrrrr szFirewallClient.removeInterfacecCst|j||SrQ)rr rrBrrrrrr szFirewallClient.addSourcecCst|j||SrQ)rr changeZoneOfSourcerrrrr sz!FirewallClient.changeZoneOfSourcecCst|j|SrQ)rr rrrrrr szFirewallClient.getSourcescCst|j||SrQ)rr rrrrrr szFirewallClient.querySourcecCst|j||SrQ)rr rrrrrr szFirewallClient.removeSourcecCst|j|||SrQ)rr r)rBrrrrrrr" szFirewallClient.addRichRulecCst|j|SrQ)rr rrrrrr& szFirewallClient.getRichRulescCst|j||SrQ)rr rrBrrrrrr* szFirewallClient.queryRichRulecCst|j||SrQ)rr rrrrrr. szFirewallClient.removeRichRulecCst|j|||SrQ)rr r)rBrrrrrrr4 szFirewallClient.addServicecCst|j|SrQ)rr rxrrrrrx8 szFirewallClient.getServicescCst|j||SrQ)rr rrBrrrrrr< szFirewallClient.queryServicecCst|j||SrQ)rr rrrrrr@ szFirewallClient.removeServicecCst|j||||SrQ)rr rrBrrrrrrrrF szFirewallClient.addPortcCst|j|SrQ)rr rrrrrrJ szFirewallClient.getPortscCst|j|||SrQ)rr rrBrrrrrrrN szFirewallClient.queryPortcCst|j|||SrQ)rr rrrrrrR szFirewallClient.removePortcCst|j|||SrQ)rr r)rBrrrrrrrX szFirewallClient.addProtocolcCst|j|SrQ)rr rrrrrr\ szFirewallClient.getProtocolscCst|j||SrQ)rr rrBrrrrrr` szFirewallClient.queryProtocolcCst|j||SrQ)rr rrrrrrd szFirewallClient.removeProtocolcCs|j|ddidSr!r rrrrrrj szFirewallClient.addForwardcCst|j|dSr)rr rrrrrrn szFirewallClient.queryForwardcCs|j|ddidSr"rrrrrrr szFirewallClient.removeForwardcCst|j||SrQ)rr r)rBrrrrrrx szFirewallClient.addMasqueradecCst|j|SrQ)rr rrrrrr| szFirewallClient.queryMasqueradecCst|j|SrQ)rr rrrrrr szFirewallClient.removeMasqueradec Cs2|dur d}|durd}t|j||||||Sr#)rr r)rBrrrr%r&rrrrr szFirewallClient.addForwardPortcCst|j|SrQ)rr rrrrrr szFirewallClient.getForwardPortscCs0|dur d}|durd}t|j|||||Sr#)rr rrBrrrr%r&rrrr s zFirewallClient.queryForwardPortcCs0|dur d}|durd}t|j|||||Sr#)rr rrrrrr s z FirewallClient.removeForwardPortcCst|j||||SrQ)rr rrrrrr szFirewallClient.addSourcePortcCst|j|SrQ)rr rrrrrr szFirewallClient.getSourcePortscCst|j|||SrQ)rr rrrrrr szFirewallClient.querySourcePortcCst|j|||SrQ)rr rrrrrr s zFirewallClient.removeSourcePortcCst|j|||SrQ)rr r)rBricmprrrrr szFirewallClient.addIcmpBlockcCst|j|SrQ)rr rrrrrr szFirewallClient.getIcmpBlockscCst|j||SrQ)rr rrBrrrrrr szFirewallClient.queryIcmpBlockcCst|j||SrQ)rr rrrrrr szFirewallClient.removeIcmpBlockcCst|j|SrQ)rr rrrrrr sz$FirewallClient.addIcmpBlockInversioncCst|j|SrQ)rr rrrrrr sz&FirewallClient.queryIcmpBlockInversioncCst|j|SrQ)rr rrrrrr sz'FirewallClient.removeIcmpBlockInversioncCs|j|||dSrQrrrrrr szFirewallClient.addChaincCs|j|||dSrQrrrrrr szFirewallClient.removeChaincCst|j|||SrQrrrrrr szFirewallClient.queryChaincCst|j||SrQrrrrrr szFirewallClient.getChainscCst|jSrQr rIrrrr szFirewallClient.getAllChainscCs|j|||||dSrQr!r"rrrr  szFirewallClient.addRulecCs|j|||||dSrQr#r"rrrr  szFirewallClient.removeRulecCs|j|||dSrQr$rrrrr szFirewallClient.removeRulescCst|j|||||SrQr%r"rrrrszFirewallClient.queryRulecCst|j|||SrQr&rrrrr szFirewallClient.getRulescCst|jSrQr'rIrrrr szFirewallClient.getAllRulescCst|j||SrQ)rr passthroughr)rrrrszFirewallClient.passthroughcCst|jSrQr-rIrrrrsz!FirewallClient.getAllPassthroughscCs|jdSrQ)rrrIrrrrsz$FirewallClient.removeAllPassthroughscCst|j|SrQr,rrrrrszFirewallClient.getPassthroughscCs|j||dSrQr(r)rrrr!szFirewallClient.addPassthroughcCs|j||dSrQr*r)rrrr%sz FirewallClient.removePassthroughcCst|j||SrQr+r)rrrr)szFirewallClient.queryPassthroughcCs|jdSrQ)renableLockdownrIrrrr/szFirewallClient.enableLockdowncCs|jdSrQ)rdisableLockdownrIrrrr3szFirewallClient.disableLockdowncCst|jSrQ)rr queryLockdownrIrrrr7szFirewallClient.queryLockdowncCs|j|dSrQrrrrrr?sz*FirewallClient.addLockdownWhitelistCommandcCst|jSrQrrIrrrrCsz+FirewallClient.getLockdownWhitelistCommandscCst|j|SrQrrrrrrGsz,FirewallClient.queryLockdownWhitelistCommandcCs|j|dSrQrrrrrrKsz-FirewallClient.removeLockdownWhitelistCommandcCs|j|dSrQrrrrrrQsz*FirewallClient.addLockdownWhitelistContextcCst|jSrQrrIrrrrUsz+FirewallClient.getLockdownWhitelistContextscCst|j|SrQrrrrrrYsz,FirewallClient.queryLockdownWhitelistContextcCs|j|dSrQrrrrrr]sz-FirewallClient.removeLockdownWhitelistContextcCs|j|dSrQrrrrrrcsz&FirewallClient.addLockdownWhitelistUidcCst|jSrQrrIrrrrgsz'FirewallClient.getLockdownWhitelistUidscCst|j|SrQrrrrrrksz(FirewallClient.queryLockdownWhitelistUidcCs|j|dSrQrrrrrrosz)FirewallClient.removeLockdownWhitelistUidcCs|j|dSrQrrrrrrusz'FirewallClient.addLockdownWhitelistUsercCst|jSrQrrIrrrrysz(FirewallClient.getLockdownWhitelistUserscCst|j|SrQrrrrrr}sz)FirewallClient.queryLockdownWhitelistUsercCs|j|dSrQrrrrrrsz*FirewallClient.removeLockdownWhitelistUsercCs|jdS)z( Authorize once for all polkit actions. N)rh authorizeAllrIrrrrszFirewallClient.authorizeAll)NrT)r)r)r)r)r)r)r)r)rrrr#rErdrlrmrorqrtr[rfrurarr~rrrrrrrrrrrrrrrrrrrHrrLrrtrrrrrrrrrrr?r@rrrrrrrrrrrrrrrrrrrrrrrxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr r rrr rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrV s4         %  /                                                                                                            rV)-Z gi.repositoryrZdbus.mainloop.glibrr!ZfirewallrZfirewall.core.baserrrZfirewall.dbus_utilsrZfirewall.core.richr Zfirewall.core.ipsetr r r r Zfirewall.errorsrrrrr#objectr$rr'rNrQr{rrrrrrrrrrr.rVrrrrsT      ) nO0ghfK|]CgVab[[