U
    *bÿ  ã                   @   s.   d dl mZmZ d dlZG dd„ deeƒZdS )é    )ÚPluginÚIndependentPluginNc                   @   s(   e Zd ZdZdZdZdd„ Zdd„ ZdS )	ÚLibvirtzlibvirt virtualization APIZlibvirt)ÚsystemZvirtc                 C   sâ   d}|   ddddg¡ |  ddddd	d
ddddddddg¡ |  d¡sb|  ddddddddg¡ n|  d¡ |  d¡ |  |  |¡¡r”|  d| ¡ |  d¡ t d ¡D ]4}t|ƒ ¡  	¡ d! }d"D ]}|  d#||f ¡ qÄq¨d S )$Nz/etc/libvirt/krb5.tabz/etc/libvirt/passwd.dbz&/var/lib/libvirt/qemu/*/master-key.aesz/etc/libvirt/secretsz/etc/libvirt/libvirt.confz/etc/libvirt/libvirtd.confz/etc/libvirt/lxc.confz/etc/libvirt/nwfilter/*.xmlz/etc/libvirt/qemu/*.xmlz/etc/libvirt/qemu.confz/run/libvirt/z /etc/libvirt/qemu/networks/*.xmlz*/etc/libvirt/qemu/networks/autostart/*.xmlz/etc/libvirt/storage/*.xmlz$/etc/libvirt/storage/autostart/*.xmlz/etc/libvirt/qemu-lockd.confz/etc/libvirt/virtlockd.confz/var/lib/libvirt/dnsmasq/*Zall_logsz/var/log/libvirt/libvirtd.logz/var/log/libvirt/qemu/*.log*z/var/log/libvirt/lxc/*.logz/var/log/libvirt/uml/*.logz(/var/log/containers/libvirt/libvirtd.logz'/var/log/containers/libvirt/qemu/*.log*z%/var/log/containers/libvirt/lxc/*.logz%/var/log/containers/libvirt/uml/*.logz/var/log/libvirtz/var/log/containers/libvirtzklist -ket %szls -lR /var/lib/libvirt/qemuz/run/libvirt/*/*.pidr   )ÚenvironZcgroupÚmapsZ	numa_mapsZlimitsz/proc/%s/%s)
Zadd_forbidden_pathZadd_copy_specZ
get_optionZpath_existsZ	path_joinZadd_cmd_outputÚglobÚopenÚreadÚ
splitlines)ÚselfZlibvirt_keytabZpidfileÚpidZpf© r   ú</usr/lib/python3/dist-packages/sos/report/plugins/libvirt.pyÚsetup   sV    üò
ø


zLibvirt.setupc                 C   s*   d}dddg}|D ]}|   ||d¡ qd S )Nz(\s*passwd=\s*')([^']*)('.*)z/etc/libvirt/qemu/.*\.xmlz/run/libvirt/qemu/.*\.xmlz/etc/libvirt/.*\.confz
\1******\3)Zdo_path_regex_sub)r   Z	match_expZlibvirt_path_expsZpath_expr   r   r   ÚpostprocJ   s    ýzLibvirt.postprocN)Ú__name__Ú
__module__Ú__qualname__Z
short_descZplugin_nameZprofilesr   r   r   r   r   r   r      s
   6r   )Zsos.report.pluginsr   r   r   r   r   r   r   r   Ú<module>	   s   