1 $ ˆl–äY>” je¶…8 Cq§nµ1hßÇ „n¿ÆÅÄ?÷ a WpWjp|ã@sgd¢ZddlZddlZddlZddlZddlZddlZddlZddlZddl Z ddl m Z ddl m Z m Z ddlmZejZz$ddlZddlmZmZmZmZWn"eyÄejdkr¼‚dZYn0d Zd Zd Ze ¡Zd Zd gZe ed ƒrüd Zed g7Zejdk�rdZedg7Zefdd„Z!dd„Z"dd„Z#dd„Z$dd„Z%Gdd„dƒZ&e�rfGdd„de&ƒZ'Gdd„de&ƒZ(Gdd „d e)ƒZ*dQd!d"„Z+ejdk�r¨dRd$d%„Z,n dSd&d%„Z,Gd'd(„d(e)ƒZ-d)d*„Z.ejdk�rîGd+d,„d,e)ƒZ/d-d.„Z0d/Z1d0Z2d1Z3d2Z4d3d4„Z5d5d6„Z6Gd7d8„d8e)ƒZ7d9d:„Z8d;d<„Z9Gd=d>„d>e*ƒZ:d?d@„Z;ejdk�rrdAdB„ZhZ?dTdCdD„Z@n,ddlAZAe eAdEƒ�rŽeAjBZCneAjDZCdUdFdD„Z@ejdk�rädGdH„ZEdIdJ„ZFe Ge(eE¡dKdL„ZHdMdN„ZIe Ge'eH¡ndOdH„ZEdPdJ„ZFe Ge(eE¡dS)V)ÚClientÚListenerÚPipeÚwaitéNé)Úutil)ÚAuthenticationErrorÚBufferTooShort)Ú reduction)Ú WAIT_OBJECT_0ÚWAIT_ABANDONED_0Ú WAIT_TIMEOUTÚINFINITEÚwin32i g4@Úsha256ÚAF_INETÚAF_UNIXÚAF_PIPEcCs t ¡|S©N©ÚtimeÚ monotonic)Útimeout©rú2/usr/lib64/python3.9/multiprocessing/connection.pyÚ _init_timeout?srcCs t ¡|kSrr)ÚtrrrÚ_check_timeoutBsrcCsX|dkr dS|dkr&tjdt ¡d�S|dkrLtjdt ¡ttƒfdd�Std ƒ‚d S) z? Return an arbitrary free address for the given family r)Ú localhostrrz listener-)ÚprefixÚdirrz\\.\pipe\pyc-%d-%d-Úzunrecognized familyN) ÚtempfileÚmktemprÚ get_temp_dirÚosÚgetpidÚnextÚ _mmap_counterÚ ValueError©ÚfamilyrrrÚarbitrary_addressIsÿÿr,cCsJtjdkr|dkrtd|ƒ‚tjdkrF|dkrFtt|ƒsFtd|ƒ‚dS)zD Checks if the family is valid for the current environment. rrzFamily %s is not recognized.rN)ÚsysÚplatformr)ÚhasattrÚsocketr*rrrÚ_validate_familyWs   r1cCsTt|ƒtkrdSt|ƒtur*| d¡r*dSt|ƒtus@t |¡rDdStd|ƒ‚dS)z] Return the types of the address This can be 'AF_INET', 'AF_UNIX', or 'AF_PIPE' rz\\rrzaddress type of %r unrecognizedN)ÚtypeÚtupleÚstrÚ startswithrÚis_abstract_socket_namespacer))ÚaddressrrrÚ address_typecs r8c@s¾eZdZdZd+dd„Zdd„Zdd„Zd d „Zd d „Zd d„Z e dd„ƒZ e dd„ƒZ e dd„ƒZ dd„Zdd„Zd,dd„Zdd„Zd-dd„Zd.d d!„Zd"d#„Zd/d%d&„Zd'd(„Zd)d*„ZdS)0Ú_ConnectionBaseNTcCs>| ¡}|dkrtdƒ‚|s(|s(tdƒ‚||_||_||_dS)Nrzinvalid handlez6at least one of `readable` and `writable` must be True)Ú __index__r)Ú_handleÚ _readableÚ _writable)ÚselfÚhandleÚreadableÚwritablerrrÚ__init__ysÿz_ConnectionBase.__init__cCs|jdur| ¡dSr©r;Ú_close©r>rrrÚ__del__†s z_ConnectionBase.__del__cCs|jdurtdƒ‚dS)Nzhandle is closed)r;ÚOSErrorrErrrÚ _check_closedŠs z_ConnectionBase._check_closedcCs|jstdƒ‚dS)Nzconnection is write-only)r<rGrErrrÚ_check_readableŽsz_ConnectionBase._check_readablecCs|jstdƒ‚dS)Nzconnection is read-only)r=rGrErrrÚ_check_writable’sz_ConnectionBase._check_writablecCs"|jrd|_n| ¡tdƒ‚dS)NFzbad message length)r=r<ÚcloserGrErrrÚ_bad_message_length–sz#_ConnectionBase._bad_message_lengthcCs |jduS)z True if the connection is closedN©r;rErrrÚclosed�