/
usr
/
libexec
/
kcare
/
python
/
kcarectl
/
__pycache__
/
Upload File
HOME
3 �;j�b � @ s d dl Z d dlZd dlZd dlZd dlZddlmZmZmZm Z m Z mZmZm Z mZmZmZmZmZmZ ddlmZmZmZ dZdOZdZd Zd Zdddd�Zd dedg�fddedg�fgZej dd� �Z!dd� Z"dd� Z#dd� Z$G dd� de%�Z&dd� Z'dPdd�Z(dd � Z)d!d"� Z*d#d$� Z+dQd&d'�Z,d(d)� Z-e$d*d+� �Z.e$d,d-� �Z/e$d.d/� �Z0d0d1� Z1d2d3� Z2d4d5� Z3d6d7� Z4d8d9� Z5dRd:d;�Z6e$e'ej7d<d=� ���Z8d>d?� Z9ej7ej:d@�ej;e$e'e j<ddfdAdB������Z=e$dCdD� �Z>dEdF� Z?dGdH� Z@dSdIdJ�ZAdKdL� ZBdMdN� ZCdS )T� N� )�auth�capabilities�config�config_handlers� constants�errors�fetch� log_utils�platform_utils� process_utils�selinux�server_info�update_utils�utils)� HTTPError�json_loads_nstr�urlquotez!/usr/libexec/kcare/libcare-client�/run/libcare/libcare.sock�/var/run/libcare.sockz /var/cache/kcare/libcare_patchesz /var/cache/kcare/libcare_cvelistz&/etc/sysconfig/kcare/libcare.logrotate�db)�mysqld�mariadbd�postgresZubuntuz16.� libnss_dnsz7.c s� t tj�} t� � y tj� }|d j� }|d }W n0 tk r` xtD ]\}}}� |O � qFW Y n>X |d }x2tD ]*\}}}|d ks�||krp|j |�rp|� P qpW � fdd�| D �S )Nr r �.c s g | ]}|� kr|�qS � r )�.0�lib)�blacklistedr �-/usr/libexec/kcare/python/kcarectl/libcare.py� <listcomp>R s z/_get_effective_libcare_libs.<locals>.<listcomp>) �listr �LIBCARE_LIBS�setr � get_distro�lower� Exception�LIBCARE_LIBS_BLACKLIST� startswith) �libsZdistro_info�distro�version�_Zbl_libsZversion_dottedZ bl_distroZ bl_versionr )r r �_get_effective_libcare_libs; s r. c C s dddgt � d�S )Nr r r )r r* )r. r r r r �get_userspace_mapU s r/ c G s t jjtjd| f|�� S )N� userspace)�os�path�joinr �PATCH_CACHE)�libname�partsr r r �get_userspace_cache_path\ s r7 c s � fdd�}|S )Nc sV z � | |�S yt d� W n6 tk rN } ztjdj|�dd� W Y d d }~X nX X d S )N� clearcachez$Libcare cache clearing failed: '{0}'F)� print_msg)�libcare_clientr'