관리-도구
편집 파일: windows_utils.cpython-36.opt-2.pyc
3 ��2a� � @ s� d dl Z e jdkred��d dlZd dlZd dlZd dlZd dlZd dlZd dl Z d dl Z dddddgZd Zej Z ejZej� Zeed�r�ejZnejejd fd d�Zdded �dd�ZG dd� d�ZG dd� dej�ZdS )� N�win32z win32 only� socketpair�pipe�Popen�PIPE� PipeHandlei c C s | t jkrd}n| t jkr d}ntd��|t jkr:td��|dkrJtd��t j | ||�}z�|j|df� |jd� |j� d d� \}}t j | ||�}yP|jd � y|j ||f� W n t tfk r� Y nX |jd � |j� \}} W n |j � � Y nX W d |j � X ||fS )Nz 127.0.0.1z::1z?Only AF_INET and AF_INET6 socket address families are supportedz)Only SOCK_STREAM socket type is supportedr zOnly protocol zero is supported� � FT)�socket�AF_INETZAF_INET6� ValueError�SOCK_STREAMZbindZlistenZgetsocknameZsetblockingZconnect�BlockingIOError�InterruptedErrorZaccept�close) Zfamily�type�proto�hostZlsockZaddrZportZcsockZssock�_� r �2/opt/alt/python36/lib64/python3.6/windows_utils.pyr % s8 FT)�duplex� overlapped�bufsizec C s" t jdtj� tt�f d�}| r>tj}tjtj B }|| }}ntj }tj }d| }}|tjO }|d rp|tjO }|d r�tj}nd}d } } yZtj ||tjd||tjtj�} tj||dtjtj|tj�} tj| dd�}|jd� | | fS | d k �rtj| � | d k �rtj| � � Y nX d S )Nz\\.\pipe\python-pipe-%d-%d-)�prefixr r T)r )�tempfileZmktemp�os�getpid�next� _mmap_counter�_winapiZPIPE_ACCESS_DUPLEXZGENERIC_READZ GENERIC_WRITEZPIPE_ACCESS_INBOUNDZFILE_FLAG_FIRST_PIPE_INSTANCEZFILE_FLAG_OVERLAPPEDZCreateNamedPipeZ PIPE_WAITZNMPWAIT_WAIT_FOREVERZNULLZ CreateFileZ OPEN_EXISTINGZConnectNamedPipeZGetOverlappedResult�CloseHandle)r r r ZaddressZopenmode�accessZobsizeZibsizeZflags_and_attribsZh1Zh2Zovr r r r S s@ c @ sX e Zd Zdd� Zdd� Zedd� �Zdd� Zej d �d d�Z dd � Zdd� Zdd� Z dS )r c C s || _ d S )N)�_handle)�self�handler r r �__init__� s zPipeHandle.__init__c C s* | j d k rd| j }nd}d| jj|f S )Nz handle=%r�closedz<%s %s>)r# � __class__�__name__)r$ r% r r r �__repr__� s zPipeHandle.__repr__c C s | j S )N)r# )r$ r r r r% � s zPipeHandle.handlec C s | j d krtd��| j S )NzI/O operatioon on closed pipe)r# r )r$ r r r �fileno� s zPipeHandle.fileno)r! c C s | j d k r|| j � d | _ d S )N)r# )r$ r! r r r r � s zPipeHandle.closec C s* | j d k r&tjd| t| d� | j� d S )Nzunclosed %r)�source)r# �warnings�warn�ResourceWarningr )r$ r r r �__del__� s zPipeHandle.__del__c C s | S )Nr )r$ r r r � __enter__� s zPipeHandle.__enter__c C s | j � d S )N)r )r$ �t�v�tbr r r �__exit__� s zPipeHandle.__exit__N)r) � __module__�__qualname__r&