o
    *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}|   g d¢¡ |  g d¢¡ |  d¡s|  g d¢¡ n
|  d¡ |  d¡ |  |  |¡¡r6|  d| ¡ |  d	¡ t d
¡D ]}t|ƒ ¡  	¡ d }dD ]}|  d||f ¡ qNq@d S )Nú/etc/libvirt/krb5.tab)z/etc/libvirt/passwd.dbr   z&/var/lib/libvirt/qemu/*/master-key.aesz/etc/libvirt/secrets)z/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_logs)z/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   s    



ÿþzLibvirt.setupc                 C   s(   d}g d¢}|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   