name : config_helper.cpython-39.pyc
a

���g*D�@s�ddlZddlZddlmZddlmZmZmZddlm	Z	ddl
mZddlm
Z
ddlmZmZmZmZddlmZdd	lmZGd
d�de
�ZdS)�N)�config)�dbus_to_python�%dbus_introspection_prepare_properties�!dbus_introspection_add_properties)�Helper)�log)�DbusServiceObject)�handle_exceptions�dbus_handle_exceptions�dbus_service_method�dbus_polkit_require_auth)�errors)�
FirewallErrorcs�eZdZdZdZejjZe	�fdd��Z
edd��Zedd��Z
ed	d
��Zeejddd
�edTdd���Zeejddd
�edUdd���Zeejj�eejdd�edVdd����Zejjejdd�dd��Zeejj�eejdd�edW�fdd�	���Zeejjejd�edXd d!���Zeejjejd�edYd"d#���Zeejj�edZd$d%���Z ejjejjdd�ed&d'���Z!eejj�ed[d(d)���Z"ejjejjdd�ed*d+���Z#eejjdd�ed\d,d-���Z$ejjejjdd�ed.d/���Z%eejjdd�ed]d0d1���Z&eejjdd�ed^d2d3���Z'eejjdd�ed_d4d5���Z(eejjdd�ed`d6d7���Z)eejjdd�edad8d9���Z*eejjdd�edbd:d;���Z+eejjdd�edcd<d=���Z,eejjdd�eddd>d?���Z-eejjdd@d
�ededAdB���Z.eejjdd�edfdCdD���Z/eejjdd�edgdEdF���Z0eejjdd@d
�edhdGdH���Z1eejjdId�edidJdK���Z2eejjdId�edjdLdM���Z3eejjdd�edkdNdO���Z4eejjdd�edldPdQ���Z5eejjdd@d
�edmdRdS���Z6�Z7S)n�FirewallDConfigHelperzFirewallD main classTcs`tt|�j|i|��||_||_||_||_|d|_|d|_d|j|_	t
|tjj�dS)Nr�zconfig.helper.%d)
�superr�__init__�parentr�obj�item_id�busname�path�_log_prefixr�dbus�DBUS_INTERFACE_CONFIG_HELPER)�selfrZconf�helperr�args�kwargs��	__class__��A/usr/lib/python3.9/site-packages/firewall/server/config_helper.pyr3s

�zFirewallDConfigHelper.__init__cCsdS�Nr!�rr!r!r"�__del__@szFirewallDConfigHelper.__del__cCs|��dSr#)Zremove_from_connectionr$r!r!r"�
unregisterDsz FirewallDConfigHelper.unregistercCs�|dkrt�|jj�S|dkr,t�|jj�S|dkrBt�|jj�S|dkrXt�|jj�S|dkrnt�|jj�Stj	�
d|��dS)N�name�filenamer�default�builtinzDorg.freedesktop.DBus.Error.InvalidArgs: Property '%s' does not exist)r�Stringrr'r(rZBooleanr)r*�
exceptions�
DBusException)r�
property_namer!r!r"�
_get_propertyLs��z#FirewallDConfigHelper._get_property�ss�v)�in_signature�
out_signatureNcCsLt|t�}t|t�}t�d|j||�|tjjkrBtj�	d|��|�
|�S)Nz%s.Get('%s', '%s')�Jorg.freedesktop.DBus.Error.UnknownInterface: Interface '%s' does not exist)r�strr�debug1rrrrr,r-r/)r�interface_namer.�senderr!r!r"�Get]s


���zFirewallDConfigHelper.Get�sza{sv}cCs`t|t�}t�d|j|�|tjjkr6tj�	d|��i}dD]}|�
|�||<q>tj|dd�S)Nz%s.GetAll('%s')r4)r'r(rr)r*�sv�Z	signature)rr5rr6rrrrr,r-r/Z
Dictionary)rr7r8�ret�xr!r!r"�GetAllns
��zFirewallDConfigHelper.GetAllZssv)r2cCslt|t�}t|t�}t|�}t�d|j|||�|j�|�|tjj	krXtj
�d|��tj
�d|��dS)Nz%s.Set('%s', '%s', '%s')r4zGorg.freedesktop.DBus.Error.PropertyReadOnly: Property '%s' is read-only)rr5rr6rr�accessCheckrrrr,r-)rr7r.Z	new_valuer8r!r!r"�Sets$


�����zFirewallDConfigHelper.Setzsa{sv}asr<cCs2t|t�}t|�}t|�}t�d|j|||�dS)Nz&%s.PropertiesChanged('%s', '%s', '%s'))rr5rr6r)rr7Zchanged_propertiesZinvalidated_propertiesr!r!r"�PropertiesChanged�s

�z'FirewallDConfigHelper.PropertiesChanged)r3cs8t�d|j�tt|��|j|j���}t	||t
jj�S)Nz%s.Introspect())
rZdebug2rrr�
IntrospectrrZget_busrrrr)rr8�datarr!r"rC�s
�
�z FirewallDConfigHelper.IntrospectcCst�d|j�|j�|j�S)z get settings for helper
        z%s.getSettings())rr6rrZget_helper_configr�rr8r!r!r"�getSettings�sz!FirewallDConfigHelper.getSettingscCsFt|�}t�d|j�|j�|�|j�|j|�|_|�	|jj
�dS)z#update settings for helper
        z%s.update('...')N)rrr6rrr@rZset_helper_configr�Updatedr')r�settingsr8r!r!r"�update�s
zFirewallDConfigHelper.updatecCs<t�d|j�|j�|�|j�|j�|_|�|jj	�dS)z1load default settings for builtin helper
        z%s.loadDefaults()N)
rr6rrr@rZload_helper_defaultsrrGr'rEr!r!r"�loadDefaults�sz"FirewallDConfigHelper.loadDefaultscCst�d|j|f�dS)Nz%s.Updated('%s')�rr6r�rr'r!r!r"rG�szFirewallDConfigHelper.UpdatedcCs:t�d|j�|j�|�|j�|j�|j�|j�dS)zremove helper
        z%s.removeHelper()N)	rr6rrr@rZ
remove_helperrZremoveHelperrEr!r!r"�remove�szFirewallDConfigHelper.removecCst�d|j|f�dS)Nz%s.Removed('%s')rKrLr!r!r"�Removed�szFirewallDConfigHelper.RemovedcCsFt|t�}t�d|j|�|j�|�|j�|j	|�|_	|�
|�dS)zrename helper
        z%s.rename('%s')N)rr5rr6rrr@rZ
rename_helperr�Renamed)rr'r8r!r!r"�rename�s

zFirewallDConfigHelper.renamecCst�d|j|f�dS)Nz%s.Renamed('%s')rKrLr!r!r"rO�szFirewallDConfigHelper.RenamedcCst�d|j�|��dS)Nz%s.getVersion()r�rr6rrFrEr!r!r"�
getVersion�sz FirewallDConfigHelper.getVersioncCsHt|t�}t�d|j|�|j�|�t|���}||d<|�	|�dS)Nz%s.setVersion('%s')r�
rr5rr6rrr@�listrFrI)r�versionr8rHr!r!r"�
setVersion�s
z FirewallDConfigHelper.setVersioncCst�d|j�|��dS)Nz
%s.getShort()rrQrEr!r!r"�getShortszFirewallDConfigHelper.getShortcCsHt|t�}t�d|j|�|j�|�t|���}||d<|�	|�dS)Nz%s.setShort('%s')rrS)rZshortr8rHr!r!r"�setShorts
zFirewallDConfigHelper.setShortcCst�d|j�|��dS)Nz%s.getDescription()�rQrEr!r!r"�getDescriptionsz$FirewallDConfigHelper.getDescriptioncCsHt|t�}t�d|j|�|j�|�t|���}||d<|�	|�dS)Nz%s.setDescription('%s')rYrS)r�descriptionr8rHr!r!r"�setDescription&s

�z$FirewallDConfigHelper.setDescriptioncCs.t�d|j�|j�|�t|���}|dS)Nz%s.getFamily()��rr6rrr@rTrF�rr8rHr!r!r"�	getFamily4szFirewallDConfigHelper.getFamilycCsdt|t�}t�d|j|�|j�|�t|���}|d|krNt	t
jd|��||d<|�|�dS)Nz%s.setFamily('%s')r]�'%s'�
rr5rr6rrr@rTrFrr
�ALREADY_ENABLEDrI�rZipvr8rHr!r!r"�	setFamily=s
zFirewallDConfigHelper.setFamily�bcCs.t|t�}t�d|j|�|��}|d|kS)Nz%s.queryFamily('%s')r]�rr5rr6rrFrdr!r!r"�queryFamilyJs
z!FirewallDConfigHelper.queryFamilycCs.t�d|j�|j�|�t|���}|dS)Nz%s.getModule()�r^r_r!r!r"�	getModuleUszFirewallDConfigHelper.getModulecCsdt|t�}t�d|j|�|j�|�t|���}|d|krNt	t
jd|��||d<|�|�dS)Nz%s.setModule('%s')rirarb�r�moduler8rHr!r!r"�	setModule^s
zFirewallDConfigHelper.setModulecCs.t|t�}t�d|j|�|��}|d|kS)Nz%s.queryModule('%s')rirgrkr!r!r"�queryModuleks
z!FirewallDConfigHelper.queryModuleza(ss)cCst�d|j�|��dS)Nz
%s.getPorts()�rQrEr!r!r"�getPortsvszFirewallDConfigHelper.getPortscCs�g}t|t�D](}t|t�r,|�t|��q|�|�q|}t�d|jd�dd�|D���|j	�
|�t|���}||d<|�|�dS)Nz%s.setPorts('[%s]')�,css"|]}d|d|dfVqdS)z('%s, '%s')rrNr!)�.0�portr!r!r"�	<genexpr>��z1FirewallDConfigHelper.setPorts.<locals>.<genexpr>ro)
rrT�
isinstance�append�tuplerr6r�joinrr@rFrI)rZportsr8Z_portsrsrHr!r!r"�setPorts}s

�zFirewallDConfigHelper.setPortscCs�t|t�}t|t�}t�d|j||�|j�|�t|���}||f|dvrbt	t
jd||f��|d�||f�|�
|�dS)Nz%s.addPort('%s', '%s')ro�%s:%s)rr5rr6rrr@rTrFrr
rcrwrI�rrs�protocolr8rHr!r!r"�addPort�s

�
�zFirewallDConfigHelper.addPortcCs�t|t�}t|t�}t�d|j||�|j�|�t|���}||f|dvrbt	t
jd||f��|d�||f�|�
|�dS)Nz%s.removePort('%s', '%s')ror{)rr5rr6rrr@rTrFrr
ZNOT_ENABLEDrMrIr|r!r!r"�
removePort�s

�z FirewallDConfigHelper.removePortcCs:t|t�}t|t�}t�d|j||�||f|��dvS)Nz%s.queryPort('%s', '%s')rorg)rrsr}r8r!r!r"�	queryPort�s

�zFirewallDConfigHelper.queryPort)N)N)N)N)N)N)N)N)N)N)N)N)N)N)N)N)N)N)N)N)N)N)N)N)N)N)8�__name__�
__module__�__qualname__�__doc__Z
persistentrrZPK_ACTION_CONFIGZdefault_polkit_auth_requiredr	rr
r%r&r/rZPROPERTIES_IFACEr9r?rrAZservice�signalrBZPK_ACTION_INFOZINTROSPECTABLE_IFACErCrrZDBUS_SIGNATURErFrIrJrGrMrNrPrOrRrVrWrXrZr\r`rerhrjrmrnrprzr~rr��
__classcell__r!r!rr"r+s0


��


��	
�
��	���
��
����
���
����
��r)rZdbus.serviceZfirewallrZfirewall.dbus_utilsrrrZfirewall.core.io.helperrZfirewall.core.loggerrZfirewall.server.dbusrZfirewall.server.decoratorsr	r
rrr
Zfirewall.errorsrrr!r!r!r"�<module>s

© 2025 Cubjrnet7