VULN_CHECK_I913V6 =jDddlZddlZddlmZddlmZmZmZddlm Z ddl m Z m Z m Z mZddlmZddlmZddlmZmZmZmZmZdd lmZdd lmZGd d eZy) N)config)dbus_to_python%dbus_introspection_prepare_properties!dbus_introspection_add_properties)IPSet) IPSET_TYPESnormalize_ipset_entrycheck_entry_overlaps_existingcheck_for_overlapping_entries)log)DbusServiceObject)handle_exceptionsdbus_handle_exceptionsdbus_service_methoddbus_service_signaldbus_polkit_require_auth)errors) FirewallErrorc eZdZdZdZ ej jZ e fdZ e dZ e dZ e dZeej dd e d3d Zeej d d e d3d Zeej jeej de d3dZeej ddZeej j.eej0d e d3fd Zeej j4ej8e d3dZeej j4ej8e d3dZeej j4e d3dZeej j4d e dZ eej j4e d3dZ!eej j4d e dZ"eej j4d e d3dZ#eej j4d e dZ$eej j4d e d3dZ%eej j4d e d3dZ&eej j4d e d3d Z'eej j4d e d3d!Z(eej j4d e d3d"Z)eej j4d e d3d#Z*eej j4d e d3d$Z+eej j4d e d3d%Z,eej j4d&e d3d'Z-eej j4d&e d3d(Z.eej j4de d3d)Z/eej j4d e d3d*Z0eej j4dd+ e d3d,Z1eej j4d-e d3d.Z2eej j4d-e d3d/Z3eej j4d e d3d0Z4eej j4d e d3d1Z5eej j4d d+ e d3d2Z6xZ7S)4FirewallDConfigIPSetzFirewallD main classTctt| |i|||_||_||_||_|d|_|d|_d|j z|_ t|tjjy)Nrzconfig.ipset.%d) superr__init__parentrobjitem_idbusnamepath _log_prefixrdbusDBUS_INTERFACE_CONFIG_IPSET)selfrconfipsetrargskwargs __class__s A/usr/lib/python3.12/site-packages/firewall/server/config_ipset.pyrzFirewallDConfigIPSet.__init__3sr "D2DCFC   Aw G ,t||;- &++99 cyNr#s r)__del__zFirewallDConfigIPSet.__del__As r*c$|jyr,)remove_from_connectionr.s r) unregisterzFirewallDConfigIPSet.unregisterEs ##%r*c|dk(r)tj|jjS|dk(r)tj|jjS|dk(r)tj|jj S|dk(r)tj |jjS|dk(r)tj |jjStjjd|z)NnamefilenamerdefaultbuiltinzDorg.freedesktop.DBus.Error.InvalidArgs: Property '%s' does not exist) r!Stringrr4r5rBooleanr6r7 exceptions DBusException)r# property_names r) _get_propertyz"FirewallDConfigIPSet._get_propertyMs F ";;txx}}- - j (;;txx001 1 f $;;txx}}- - i '<< 0 01 1 i '<< 0 01 1/////1>? r*ssv) in_signature out_signaturec&t|t}t|t}tjd|j|||t j jk7r"t jjd|z|j|S)Nz%s.Get('%s', '%s')Jorg.freedesktop.DBus.Error.UnknownInterface: Interface '%s' does not exist) rstrr debug1r rr!r"r:r;r=)r#interface_namer<senders r)GetzFirewallDConfigIPSet.Get_s(<&}c:  $"2"2NM  V[[DD D////02@A  !!-00r*sza{sv}cJt|t}tjd|j||t j jk7r"t jjd|zi}dD]}|j|||<t j|dS)Nz%s.GetAll('%s')rC)r4r5rr6r7sv signature) rrDr rEr rr!r"r:r;r= Dictionary)r#rFrGretxs r)GetAllzFirewallDConfigIPSet.GetAllqs(< $d&6&6G V[[DD D////02@A  CA''*CFDsd33r*ssv)r@ct|t}t|t}t|}tjd|j||||j j ||tjjk7r"tjjd|ztjjd|z)Nz%s.Set('%s', '%s', '%s')rCzGorg.freedesktop.DBus.Error.PropertyReadOnly: Property '%s' is read-only) rrDr rEr r accessCheckrr!r"r:r;)r#rFr< new_valuerGs r)SetzFirewallDConfigIPSet.Sets(<&}c: "9-  &         ' V[[DD D////02@A  oo++ )+8 9  r*zsa{sv}asrLct|t}t|}t|}tjd|j|||y)Nz&%s.PropertiesChanged('%s', '%s', '%s'))rrDr rEr )r#rFchanged_propertiesinvalidated_propertiess r)PropertiesChangedz&FirewallDConfigIPSet.PropertiesChangedsI(<+,>?!/0F!G 4      "  r*)rActjd|jtt||j |jj}t||tjjS)Nz%s.Introspect()) r debug2r rr Introspectrrget_busrrr!r")r#rGdatar(s r)r]zFirewallDConfigIPSet.Introspectsb $d&6&67)4; IIt||++- 1 $ ??  r*ctjd|j|jj |j S)zget settings for ipsetz%s.getSettings())r rEr rget_ipset_configrr#rGs r) getSettingsz FirewallDConfigIPSet.getSettingss2 %t'7'78{{++DHH55r*c0t|}tjd|j|jj ||j j|j||_|j|jjy)zupdate settings for ipsetz%s.update('...')N) rr rEr rrTrset_ipset_configrUpdatedr4)r#settingsrGs r)updatezFirewallDConfigIPSet.updatese "(+ %t'7'78 ';;//(C TXX]]#r*ctjd|j|jj ||j j |j|_|j|jjy)z'load default settings for builtin ipsetz%s.loadDefaults()N) r rEr rrTrload_ipset_defaultsrrfr4rbs r) loadDefaultsz!FirewallDConfigIPSet.loadDefaultssY &(8(89 ';;22488< TXX]]#r*cNtj|jd|dy)Nz .Updated('')r rEr r#r4s r)rfzFirewallDConfigIPSet.Updated )9)94@Ar*ctjd|j|jj ||j j |j|jj|jy)z remove ipsetz %s.remove()N) r rEr rrTr remove_ipsetr removeIPSetrbs r)removezFirewallDConfigIPSet.removesV =$"2"23 '   * )r*cNtj|jd|dy)Nz .Removed('rmrnros r)RemovedzFirewallDConfigIPSet.Removedrpr*ct|t}tjd|j||j j ||jj|j||_ |j|y)z rename ipsetz%s.rename('%s')N) rrDr rEr rrTr rename_ipsetrRenamed)r#r4rGs r)renamezFirewallDConfigIPSet.renamesadC( $d&6&6= ';;++DHHd; Tr*cNtj|jd|dy)Nz .Renamed('rmrnros r)ryzFirewallDConfigIPSet.Renamedrpr*chtjd|j|jdS)Nz%s.getVersion()rr rEr rcrbs r) getVersionzFirewallDConfigIPSet.getVersion- $d&6&67!!$$r*ct|t}tjd|j||j j |t|j}||d<|j|y)Nz%s.setVersion('%s')r rrDr rEr rrTlistrcrh)r#versionrGrgs r) setVersionzFirewallDConfigIPSet.setVersion sa!#. ($*:*:GD '((*+  Hr*chtjd|j|jdS)Nz %s.getShort()rr}rbs r)getShortzFirewallDConfigIPSet.getShorts, ?D$4$45!!$$r*ct|t}tjd|j||j j |t|j}||d<|j|y)Nz%s.setShort('%s')rr)r#shortrGrgs r)setShortzFirewallDConfigIPSet.setShortsauc* &(8(8%@ '((*+  Hr*chtjd|j|jdS)Nz%s.getDescription()r}rbs r)getDescriptionz#FirewallDConfigIPSet.getDescription*s- ($*:*:;!!$$r*ct|t}tjd|j||j j |t|j}||d<|j|y)Nz%s.setDescription('%s')rr)r# descriptionrGrgs r)setDescriptionz#FirewallDConfigIPSet.setDescription0sa%[#6  ,d.>.> L '((*+!  Hr*chtjd|j|jdS)Nz %s.getType()r}rbs r)getTypezFirewallDConfigIPSet.getType<s, >4#3#34!!$$r*c>t|t}tjd|j||j j ||tvrttj|t|j}||d<|j|y)Nz%s.setType('%s')r)rrDr rEr rrTrrr INVALID_TYPErrcrh)r# ipset_typerGrgs r)setTypezFirewallDConfigIPSet.setTypeBs|$J4  %t'7'7D ' [ ( 3 3Z@ @((*+   Hr*za{ss}chtjd|j|jdS)Nz%s.getOptions()r}rbs r) getOptionszFirewallDConfigIPSet.getOptionsPrr*c t|t}tjd|jt ||j j|t|j}||d<|j|y)Nz%s.setOptions('[%s]')r) rdictr rEr reprrrTrrcrh)r#optionsrGrgs r) setOptionszFirewallDConfigIPSet.setOptionsVse!$/ *D,<,t|t}tjd|j||j j |t|j}||dvrttj||d|=|j|y)Nz%s.removeOption('%s')r) rrDr rEr rrTrrcrr NOT_ENABLEDrh)r#rrGrgs r) removeOptionz!FirewallDConfigIPSet.removeOptionmsS#& *D,<,OP '((*+  # I(>#(E 9 9: :  Hr*ct|t}t|}tjd|j ||j j|t|j}d|dvr$|dddk7rttj||dvrttj|t||d|dj||j!|y)Nz%s.addEntry('%s')rrrr)rrDr r rEr rrTrrcrrrrr appendrhr#entryrGrgs r)addEntryzFirewallDConfigIPSet.addEntrysuc*%e, &(8(8%@ '((*+  # I(>#(E 9 9: : HQK  6 6> >%eXa[9 5! Hr*ct|t}t|}tjd|j ||j j|t|j}d|dvr$|dddk7rttj||dvrttj||dj||j|y)Nz%s.removeEntry('%s')rrrr)rrDr r rEr rrTrrcrrrrrtrhrs r) removeEntryz FirewallDConfigIPSet.removeEntrysuc*%e, )4+;+;UC '((*+  # I(>#(E 9 9: :  # 2 2E: : 5! Hr*ct|t}t|}tjd|j |t |j}d|dvr$|dddk7rttj||dvS)Nz%s.queryEntry('%s')rrrr) rrDr r rEr rrcrrrrs r) queryEntryzFirewallDConfigIPSet.queryEntrys uc*%e, ($*:*:EB((*+  # I(>#(E 9 9: : ##r*r,)8__name__ __module__ __qualname____doc__ persistentrr!PK_ACTION_CONFIGdefault_polkit_auth_requiredrrrr/r2r=rPROPERTIES_IFACErHrQrrVrrZPK_ACTION_INFOINTROSPECTABLE_IFACEr]r"rDBUS_SIGNATURErcrhrkrfrtrvrzryr~rrrrrrrrrrrrrrrrr __classcell__)r(s@r)rr+sEJ&#);;#?#? +      &&"..TQTU1V1 ..SPWX 4Y 4fkk::;..UC D< 0..*E  F  fkk88922#F  G:   //u?S?S66  //e>R>R$$@@A$B$@@CPBQB @@A*B*@@CPBQB @@sST@@CPBQB @@PST%U%@@sST@@PST%U%@@sST@@PST%U%@@sST@@PST%U%@@sST@@PWX%Y%@@wWX@@tT U @@sST //dRU@@@@PTU%V%@@tT U @@sS T @@sS T  //cQT$$r*r)r! dbus.servicefirewallrfirewall.dbus_utilsrrrfirewall.core.io.ipsetrfirewall.core.ipsetrr r r firewall.core.loggerr firewall.server.dbusr firewall.server.decoratorsrrrrrrfirewall.errorsrrr-r*r)rsR  ) %2)X$,X$r*