%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/lib/python3.9/site-packages/cockpit/__pycache__/
Upload File :
Create Path :
Current File : //usr/lib/python3.9/site-packages/cockpit/__pycache__/internal_endpoints.cpython-39.pyc

a

��h��@s�ddlZddlZddlZddlZddlZddlZddlZddlmZddl	m
Z
mZddlm
Z
mZmZmZddlmZe�e�ZGdd�dej�ZGd	d
�d
ej�ZGdd�dej�Zd
efdefdefgZdS)�N)�Path)�Dict�Optional)�Variant�bus�inotify�	pathwatch�)�configc@s`eZdZUdZeeed<dd�dd�Zej	j
dgd�dd	��Zej	j
gd�dd�d
d��ZdS)�cockpit_LoginMessagesN�messages��returnc
Cs�tj�dd�}|dur$t�d�dSt�d|�zFtt|�d��$}|�d�|��|_	Wd�n1sj0YWn6t
ttfy�}zt�d|�WYd}~nd}~00t�d|j	�dS)NZCOCKPIT_LOGIN_MESSAGES_MEMFDzBCOCKPIT_LOGIN_MESSAGES_MEMFD wasn't set.  No login messages today.z(Trying to read login messages from fd %s�rrz!Reading login messages failed: %sz$Successfully read login messages: %s)
�os�environ�pop�logger�debug�open�int�seek�readr�
ValueError�OSError�UnicodeDecodeError)�selfZfdstrZlogin_messages�exc�r�>/usr/lib/python3.9/site-packages/cockpit/internal_endpoints.py�__init__&s

,"zcockpit_LoginMessages.__init__�s)Z	out_typescCs
|jpdS)Nz{}�r�rrrr�get:szcockpit_LoginMessages.getcCs
d|_dS�Nr"r#rrr�dismiss>szcockpit_LoginMessages.dismiss)
�__name__�
__module__�__qualname__rr�str�__annotations__r r�	Interface�Methodr$r&rrrrr#s

rc@s�eZdZUeed<ejed<eej	ed<e
j�d�Z
e
jeeeeeffd�dd��Ze
jjgd�d	�eeeeefd
d�dd
��Zd
d�dd�Zejeeed
d�dd�Zeeeed
d�dd�Zdd�Zd
S)�cockpit_Machines�path�watch�pending_notifyz	a{sa{sv}}r
cCs�i}t�|j�d��D]�}z�t|��z}zt�|�}Wn2tjyft�d|�YWd�WqYn0|��D]\}}dd�|��D�||<qpWd�n1s�0YWqt	y�}zt�
d||�WYd}~qd}~00q|S)Nz/*.jsonz#Invalid JSON in file %s.  Ignoring.cSsi|]\}}|t|��qSr)r��.0�key�valuerrr�
<dictcomp>Y�z1cockpit_Machines.get_machines.<locals>.<dictcomp>z-Unreadable machines.d file %s: %s.  Ignoring.)�globr/r�json�load�JSONDecodeErrorrZwarning�itemsr�error)r�results�filename�fp�contents�hostname�attrsrrrr�get_machinesKs
:&zcockpit_Machines.get_machines)r!r!za{sv})Zin_typesN)r?rBrCrcCsz>|j�|����}t�|�}Wd�n1s20YWnVtjy�}z(t�dd|�d|�d��|�WYd}~nd}~0ty�i}Yn0|�	|i��
dd�|��D��|jjddd�t|j�|�d	�� }tj
||d
d�Wd�n1s�0YdS)Nzcockpit.Machines.ErrorzFile z is in invalid format: �.cSsi|]\}}||j�qSr�r5r2rrrr6kr7z+cockpit_Machines.update.<locals>.<dictcomp>T)�parents�exist_ok�w�)�indent)r/�joinpathrr9r:r;rZBusError�FileNotFoundError�
setdefault�updater<�mkdir�dump)rr?rBrCr@rArrrrrO_s,0
 zcockpit_Machines.updatecs2dd��fdd�}�jdur.t���d|��_dS)Nr
cs��didg�d�_dS)Nzcockpit.MachinesZMachines)Zproperties_changedr1rr#rr�_notify_nowrsz,cockpit_Machines.notify.<locals>._notify_nowg�?)r1�asyncioZget_running_loopZ
call_later)rrRrr#r�notifyqs
zcockpit_Machines.notify)�mask�cookie�namercCs|��dSr%�rT)rrUrVrWrrr�do_inotify_event{sz!cockpit_Machines.do_inotify_event)�fd�errnorcCs|��dSr%rX)rrZr[rrr�do_identity_changed~sz$cockpit_Machines.do_identity_changedcCs0t�d�|_d|_t�t|j�|�|_d|_dS)Nz
machines.d.)r
Z
lookup_configr/r1r�	PathWatchr*r0r#rrrr �szcockpit_Machines.__init__)r'r(r)rr+rr]rrSZHandlerr,�PropertyZmachines�getterrr*rrDr-rOrTr�EventrrYr\r rrrrr.Cs

 
r.c@s�eZdZejjddd�Zejjddd�Zejjddd�Zejjddd�Z	ejjddd�Z
ejjddd�Zejjdgd�Zdd�d	d
�Z
dS)�cockpit_Userr!�rF�ir�asNr
cCs�t�t���}|j|_|j|_|j|_	|j
|_|j|_
|j|_t�|j
�jg}t��D]&}|j|jvrV|j|vrV|�|j�qV||_dSr%)�pwd�getpwuidr�getuid�pw_namerW�pw_gecos�full�pw_uid�id�pw_gid�gid�pw_dir�home�pw_shell�shell�grp�getgrgid�gr_name�getgrall�gr_mem�append�groups)r�userryZgrrrrr �szcockpit_User.__init__)r'r(r)rr,r^rWrjrlrnrprrryr rrrrra�sraz/LoginMessagesz	/machinesz/user)rSr8rsr9Zloggingrre�pathlibr�typingrrZcockpit._vendor.systemd_ctypesrrrrrbr
Z	getLoggerr'rZObjectrr.raZEXPORTSrrrr�<module>s$
 G�

Zerion Mini Shell 1.0