File: //lib/python3/dist-packages/uaclient/cli/__pycache__/cves.cpython-38.pyc
U
��Jh � @ s� d dl Z d dlmZmZ d dlmZmZ d dlmZ d dl m
Z
mZmZ d dl
mZmZ d dlmZ d dlmZ ejejd �ed
�dd��Zd
d� Zdd� Zed
�dd�Zed
�dd�Zedejejeejdee
dejdd�e
dejdd�gd�gd�Z dS )� N)�
exceptions�messages)�CVEsOptions�_cves)�cli_util)�ProArgument�ProArgumentGroup�
ProCommand)�Table�create_link)�HelpCategory)�UAConfig)�msg��cfgc K s@ t | j| jd�}zt||d�}W n tjk
r: d }Y nX |S )N)�fixable� unfixable)Zoptionsr )r r r r r �VulnerabilityDataNotFound)�argsr �kwargsZcve_options�result� r �3/usr/lib/python3/dist-packages/uaclient/cli/cves.py�_get_cve_vulnerabilities s �
r c C sV g }| j �� D ]B\}}|jD ]2}| j�|j�}|r|�||j|jpDd|jf� qq|S )N�-)�packages�items�cves�get�name�appendZpriorityZ
fix_origin)�cve_vulnerabilities�rowsZpackage_nameZpackage_infoZcveZcve_infor r r �_get_cve_table_rows s
�� r# c C sX g }t | dd� d�D ]>}|�|d t�|d �|d t|d d�|d �d �f� q|S )
Nc S s | d d� | d �fS )Nr )ZcriticalZhighZmediumZlowZ
negligible� )�index)�rowr r r �<lambda>3 s �z"_format_cve_rows.<locals>.<lambda>)�keyr r$ � � zhttps://ubuntu.com/security/{})�textZurl)�sortedr r Zcolorize_priorityr �format)Zcve_rowsZformatted_rowsr&