Current File : //usr/lib/python3/dist-packages/uaclient/cli/__pycache__/cves.cpython-312.pyc
�

��Jh���ddlZddlmZmZddlmZmZddlmZddl	m
Z
mZmZddl
mZmZddlmZddlmZej(ej*�	�d
efd��Zd�Zd
�Zd
efd�Zd
efd�Zedej6ej8eej:dee
dej<d��e
dej>d��g��g��Z y)�N)�
exceptions�messages)�CVEsOptions�_cves)�cli_util)�ProArgument�ProArgumentGroup�
ProCommand)�Table�create_link)�HelpCategory)�UAConfig)�msg�cfgc��t|j|j��}	t||��}|S#tj
$rd}Y|SwxYw)N)�fixable�	unfixable)�optionsr)rrrrr�VulnerabilityDataNotFound)�argsr�kwargs�cve_options�results     �3/usr/lib/python3/dist-packages/uaclient/cli/cves.py�_get_cve_vulnerabilitiesrsS�������.�.��K�
��{��4���M���/�/�����M��s�
2�A�
Ac�.�g}|jj�D]u\}}|jD]a}|jj|j�}|s�+|j||j|jxsd|jf��c�w|S)N�-)�packages�items�cves�get�name�append�priority�
fix_origin)�cve_vulnerabilities�rows�package_name�package_info�cve�cve_infos      r�_get_cve_table_rowsr,s���
�D�&9�&B�&B�&H�&H�&J��"��l��$�$�	�C�*�/�/�3�3�C�H�H�=�H�����$� �)�)����-�#����	��		���K�c
���g}t|d���D]S}|j|dtj|d�|dt	|ddj|d���f��U|S)	Nc�4�|ddj|d�fS)Nr)�critical�high�medium�low�
negligible�)�index)�rows r�<lambda>z"_format_cve_rows.<locals>.<lambda>3s"����F�?�E�E�c�!�f�M�
�r-)�keyrr5��zhttps://ubuntu.com/security/{})�text�url)�sortedr#r�colorize_priorityr�format)�cve_rows�formatted_rowsr7s   r�_format_cve_rowsrC/s����N���
��
��	����A���*�*�3�q�6�2��A����Q��8�?�?��A��G��	
�
	
�
�&�r-c�V�t||��}|stj��|jr�t	t|��}|rt
tgd�|���y|jrt
tj�y|jrt
tj�yt
tj�y|jrt
tj�y|jrt
tj�yt
tj�y)N)r)�Package�Priority�Origin�
Vulnerability)�headersr')rrrrrCr,�printrrr�CLI_UNFIXABLE_CVES_NOT_AFFECTEDr�CLI_FIXABLE_CVES_NOT_AFFECTED�CLI_CVES_NOT_AFFECTED)rrr&r's    r�
_list_cvesrNGs���2�4�S�A����2�2�4�4��#�#�� 3�4G� H�I�����N���
��~�~��h�>�>�?�����h�<�<�=��h�4�4�5��>�>��(�:�:�;�
�\�\��(�8�8�9��(�0�0�1r-c���|jr#|jrtjdd���	t	||��y#t
$r!tjj�YywxYw)Nrr)�option1�option2)rr)	rrr�InvalidOptionCombinationrN�BrokenPipeError�sys�stderr�close)rrrs   r�action_cvesrWgsU���~�~�$�,�,��1�1���
�	
����#�&�����
�
�����s�
?�'A)�(A)r Tz--unfixable�
store_true)�help�actionz	--fixable)�	arguments)rY�descriptionrZ�
help_category�preserve_description�argument_groups)!rT�uaclientrr�#uaclient.api.u.pro.security.cves.v1rr�uaclient.clir�uaclient.cli.commandsrr	r
�uaclient.cli.formatterrr�uaclient.cli.parserr
�uaclient.configr�with_spinner�CLI_CVES_SPINNER_MSGrr,rCrNrW�CLI_CVES�
CLI_CVES_DESC�SECURITY�CLI_CVES_UNFIXABLE�CLI_CVES_FIXABLE�cves_command�r-r�<module>rps���
�)�B�!�K�K�5�,�$�����8�8�8�9��8��:���(�02�(�2�@	�h�	��
�	�	�	��&�&���'�'����!�!�4�4�'��
��!�2�2�'��
�
	
���r-