a
«°iµ/ ã @ sÊ d Z g d¢ZddlZddlZddlmZ ddlmZ ddl m
Z
ddlmZ ddl
mZmZ dd lmZ d
Zg d¢Zdd
d
ddœZddddœZG dd„ deƒZdd„ Zdd„ Zdd„ Zdd„ Zdd„ ZdS ) zThe ipset command wrapper)ÚipsetÚcheck_ipset_nameÚremove_default_create_optionsé N)Úerrors)Ú
FirewallError)ÚrunProg)Úlog)ÚtempFileÚreadfile)ÚCOMMANDSé )zhash:ipzhash:ip,portzhash:ip,port,ipzhash:ip,port,netzhash:ip,markzhash:netzhash:net,netz
hash:net,portzhash:net,port,netzhash:net,ifacezhash:macz
inet|inet6Úvaluez
value in secs)ÚfamilyÚhashsizeÚmaxelemÚtimeoutZinetZ1024Z65536)r r r c @ s¢ e Zd ZdZdd„ Zdd„ Zdd„ Zdd „ Zd%dd„Zd
d„ Z dd„ Z
dd„ Zd&dd„Zd'dd„Z
dd„ Zd(dd„Zd)dd„Zdd„ Zdd „ Zd!d"„ Zd#d$„ Zd
S )*r zipset command wrapper classc C s t d | _d| _d S )Nr )r Ú_commandÚname©Úself© r ú7/usr/lib/python3.9/site-packages/firewall/core/ipset.pyÚ__init__K s
zipset.__init__c C s^ dd„ |D ƒ}t d| j| jd |¡¡ t| j|ƒ\}}|dkrZtd| jd |¡|f ƒ‚|S )zCall ipset with argsc S s g | ]}d | ‘qS )ú%sr )Ú.0Úitemr r r Ú