관리-도구
편집 파일: polyfills.cpython-39.opt-1.pyc
a ��g � @ s d dl Z d dlZdd� ZdS )� Nc sR t td�s0ddl� ddl�d� �fdd� } | t_t td�sNG dd� d�}|t_dS ) z#Add shims for older Python versions�recv_fdsr Nc s� �� d�}| �|� �||j ��\}}}}|D ]B\}} } |� jkr.| � jkr.|�| d t| �t| �|j � � q.|t|�||fS )N�i) �arrayZrecvmsgZCMSG_LEN�itemsizeZ SOL_SOCKETZ SCM_RIGHTSZ frombytes�len�list)Zsock�bufsizeZmaxfds�flagsZfds�msgZancdata�addrZ cmsg_levelZ cmsg_typeZ cmsg_data��_socketr � �5/usr/lib/python3.9/site-packages/cockpit/polyfills.pyr s &zinstall.<locals>.recv_fds�AsyncExitStackc @ s, e Zd Zdd� Zdd� Zdd� Zdd� Zd S ) zinstall.<locals>.AsyncExitStackc � s g | _ g | _| S �N)�cms� async_cms)�selfr r r � __aenter__+ s z*install.<locals>.AsyncExitStack.__aenter__c � s |� � I d H }| j�|� |S r )r r �append�r �cm�resultr r r �enter_async_context0 s z3install.<locals>.AsyncExitStack.enter_async_contextc S s |� � }| j�|� |S r )� __enter__r r r r r r � enter_context5 s z-install.<locals>.AsyncExitStack.enter_contextc � s8 | j D ]}|�|||� q| jD ]}|�|||� q d S r )r � __aexit__r �__exit__)r �exc_type� exc_value� tracebackr r r r r : s z)install.<locals>.AsyncExitStack.__aexit__N)�__name__� __module__�__qualname__r r r r r r r r r * s )r )�hasattr�socketr r r � contextlibr )r r r r r �install s r( )r'