File: //opt/saltstack/salt/lib/python3.10/site-packages/salt/grains/__pycache__/core.cpython-310.pyc
o
�N�g� � @ s` d Z ddlZddlZddlZddlZddlZddlZddlZddlZddl Z ddl
Z
ddlZddlZddl
mZmZ ddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlmZmZ ddlmZ ddlm!Z" zddlm#Z$ W n e%y� dd � Z&d
d� Z$Y nw dd
� Z'zddl(Z)dZ*W n e%y� dZ*Y nw e�+e,�Z-dZ.ej/j�0� r�ddl1Zzddl2Z2ddl3Z3ddl4Zddl5ZdZ.W n e%y� e-�6d� Y nw dgZ7da8ej9j:j;ej9j:j<ej9j:j=ej9j>j?ej9j>j@ej9jAjBd�ZCeDed�ZEdZFdZGdd� ZHdd� ZIdd� ZJdd� ZKdd� ZLd d!� ZMd"d#� ZNd$d%� ZOd&d'� ZPd(d)� ZQd*d+� ZRd,d-� ZSd.d/� ZTd0d1� ZUd2d3� ZVd4d5� ZWd6d7� ZXd8d9� ZYd:d;� ZZd<d=� Z[d>d?� Z\d@dA� Z]dBdC� Z^dDdE� Z_dFdG� Z`dHdI� ZadJdK� Zbe�cdL�Zde�cdM�Zee�cdNejf�Zgi dOdP�dQdR�dSdT�dUdV�dWdX�dYdY�dZd[�d\d]�d^d_�d`da�dbdc�ddde�dfdg�dhdg�didj�dkdj�dldm�i dnd]�dodp�dqdr�dsdt�dudv�dwdx�dydx�dzd{�d|d}�d~d�d�d��d�d��d�d��d�d��d�d��d�d��d�d���d�d�i�Zhd�d�d�d��Zi�dd�d��Zji d�dX�d]dP�d_dP�dadP�d�dP�d�dP�d�dP�d�dP�d�dP�dcdP�djdP�dmdP�d�dP�dgdP�d�dP�d�dP�d�dP�i d�dP�d�dP�d�dP�d�d��d�dX�d�d��d�d��d�d��d�d��d�d��d�d��d�d��d�d��dd��d�d��d�d��d�d���i dTdV�dxdV�d�dV�d}dV�d�dV�dedP�d�dX�d�dX�d�dX�d�dX�d�dX�d{dX�dpdP�d[dX�d�dX�d�dX�d�dX��i d�dX�d�dX�d�dX�d�dX�dtdt�d�dX�d�d��d�dX�d�dR�d�dX�d�dX�d�dP�d�dX�d�dX�d�dP�d�dX�d�dX��Zkd�dPiZld�dń Zme�cdơZnd�dȄ Zod�dʄ Zpd�d̄ Zqd�d΄ Zrd�dЄ Zsd�d҄ Ztd�dԄ Zud�dք Zvd�d Zwd�dڄ Zxd�d܄ Zyd�dބ Zzd�d� Z{d�d� Z|d�d� Z}d�d� Z~d�d� Zd�d� Z�d�d� Z�d�d� Z�d�d� Z�d�d� ZBd�d� Z�d�d�� Z�d�d�� Z�d�d�� Z�d�d�� Z�d�d�� Z�d��d � Z��d�d� Z��d�d� Z��d�d� Z��d�d� Z��d �d
� Z��d�d� Z��d
�d� Z��d�d� Z��d�d� Z��d�d� Z��d�d� Z��d�d� Z��d�d� Z��d�d� Z�dS ( a�
The static grains, these are the core, or built in grains.
When grains are loaded they are not loaded in the same way that modules are
loaded, grain functions are detected and executed, the functions MUST
return a dict which will be applied to the main grains dict. This module
will always be executed first, so that any grains loaded here in the core
module can be overwritten just by returning dict keys with the same value
as those returned here
� N)�EACCES�EPERM)�_clear_interfaces�_get_interfaces)�get_machine_identifier)�linux_distribution)�freedesktop_os_releasec G s� dddd�}d}| D ]W}z@t jj�|��-}t�d�}|D ]}|�|�� �}|r6t�dd|� d��||� d �<