o
    id~	                     @   s.   d dl mZmZmZmZ G dd deeZdS )    )PluginIndependentPluginSoSPredicate	PluginOptc                   @   s6   e Zd ZdZdZdZdZeddeddgZ	d	d
 Z
dS )	Conntrackz)conntrack - netfilter connection tracking	conntrack)networkcluster)zconntrack-toolsr   
conntrackd
namespacesNz0Number of namespaces to collect, 0 for unlimited)defaultval_typedescc                 C   s   |  d | g d t| g dddid}| jddg|d	 d
}| d}| j|dD ]}|| d }| |d  | |d  q-d S )Nz/etc/conntrackd/conntrackd.conf)zconntrackd -s networkzconntrackd -s cachezconntrackd -s runtimezconntrackd -s linkzconntrackd -s rsqueuezconntrackd -s queuezconntrackd -s ctzconntrackd -s expect)nf_conntracknf_conntrack_netlinknf_defrag_ipv4nf_defrag_ipv6	nfnetlinkkmodsall)r   requiredzconntrack -L -o extendedzconntrack -S)predzip netns exec r   )ns_max )add_copy_specadd_cmd_outputr   
get_optionget_network_namespaces)selfct_pred
cmd_prefixnsps	namespacens_cmd_prefix r$   >/usr/lib/python3/dist-packages/sos/report/plugins/conntrack.pysetup   s&   

zConntrack.setup)__name__
__module____qualname__
short_descplugin_nameprofilespackagesr   intoption_listr&   r$   r$   r$   r%   r      s    r   N)sos.report.pluginsr   r   r   r   r   r$   r$   r$   r%   <module>   s   	