�
i��dx � �0 � d dl mZmZmZ G d� dee� Zy)� )�Plugin�IndependentPlugin�SoSPredicatec �( � e Zd ZdZdZdZdZd� Zd� Zy)�Grub2zGRUB2 bootloader�grub2)�boot)r z grub2-efizgrub2-commonc � � | j dddd�� | j g d�� | j dd�� d }d
|z dd�}| j | t | |�
� �� r|dz
}| j |ddit | dg�� �� y )N� grub2_cfg�
grub2_efi_cfg�grubenv)�/boot/grub2/grub.cfgz/boot/efi/.*/grub.cfg�/boot/grub2/grubenv)z/boot/efi/EFI/*/grub.cfgr r z/boot/grub/grub.cfgz/boot/loader/entriesz/boot/grub2/custom.cfgz/boot/grub2/user.cfgz/etc/default/grubz/etc/grub2.cfgz/etc/grub.dz/etc/grub2-efi.cfgzls -lanR /boot�ls_boot)�tags�grub2-mkconfigz %s --helpz--no-grubenv-update)�cmd�output)�cmd_outputs)�predz --no-grubenv-update�GRUB_DISABLE_OS_PROBER�true�dm_mod)�kmods)�envr )�
add_file_tags�
add_copy_spec�add_cmd_output�test_predicater )�self�grub_cmd�cos �:/usr/lib/python3/dist-packages/sos/report/plugins/grub2.py�setupzGrub2.setup s� � ����$/�%4�#,�
� �
���
� �
���,�9��=� $�� �8�+�7L�
M�����t�,�t��*L��M��.�.�H����H�+C�V�*L�!-�d�8�*�!E� � G� c � � d}d}d}d}| j d||� | j d||� | j d||� | j d||� y )Nz(password )\s*(\S*)\s*(\S*)z!(password_pbkdf2)\s*(\S*)\s*(\S*)z\1 \2 ********z\1 \2 grub.pbkdf2.********r z
.*\/grub\.)�do_cmd_output_sub�do_path_regex_sub)r �
passwd_exp�passwd_pbkdf2_exp�
passwd_sub�passwd_pbkdf2_subs r# �postproczGrub2.postproc7 s| � � 4�
�@��&�
�9��������
�
������
�
������
�
������
r% N) �__name__�
__module__�__qualname__�
short_desc�plugin_name�profiles�packagesr$ r- � r% r# r r s" |