a  ze@sddlZejdkredddlZddlZddlZddlZddlZddlZddl Z dZ dZ ej Z ej Z eZdde dd d ZGd d d ZGd ddejZdS)Nwin32z win32 only)pipePopenPIPE PipeHandlei F)TT)duplex overlappedbufsizec Cs$tjdtttd}|r>tj}tj tj B}||}}ntj }tj }d|}}|tj O}|drp|tj O}|drtj }nd}d} } z\t||tjd||tjtj} t||dtjtj|tj} tj| dd} | d| | fWS| durt| | durt| Yn0dS)Nz\\.\pipe\python-pipe-{:d}-{:d}-)prefixrTr)tempfilemktempformatosgetpidnext _mmap_counter_winapiZPIPE_ACCESS_DUPLEXZ GENERIC_READZ GENERIC_WRITEZPIPE_ACCESS_INBOUNDZFILE_FLAG_FIRST_PIPE_INSTANCEZFILE_FLAG_OVERLAPPEDZCreateNamedPipeZ PIPE_WAITZNMPWAIT_WAIT_FOREVERZNULLZ CreateFileZ OPEN_EXISTINGZConnectNamedPipeZGetOverlappedResult CloseHandle) rrr addressZopenmodeaccessZobsizeZibsizeZflags_and_attribsZh1Zh2ZovrI/opt/bitninja-python-dojo/embedded/lib/python3.9/asyncio/windows_utils.pyr sJ            rc@s^eZdZddZddZeddZddZej d d d Z e j fd d Z ddZddZdS)rcCs ||_dSN_handleselfhandlerrr__init__VszPipeHandle.__init__cCs2|jdurd|j}nd}d|jjd|dS)Nzhandle=closed< >)r __class____name__rrrr__repr__Ys zPipeHandle.__repr__cCs|jSrrrrrrr`szPipeHandle.handlecCs|jdurtd|jS)NzI/O operation on closed pipe)r ValueErrorr(rrrfilenods zPipeHandle.fileno)rcCs|jdur||jd|_dSrr)rrrrrcloseis  zPipeHandle.closecCs*|jdur&|d|t|d|dS)Nz unclosed )source)rResourceWarningr+)r_warnrrr__del__ns zPipeHandle.__del__cCs|Srrr(rrr __enter__sszPipeHandle.__enter__cCs |dSr)r+)rtvtbrrr__exit__vszPipeHandle.__exit__N)r& __module__ __qualname__r r'propertyrr*rrr+warningswarnr/r0r4rrrrrQs rcseZdZdfdd ZZS)rNc sd}}}d} } } |tkr@tddd\} } t| tj}n|}|tkrhtdd\} } t| d}n|}|tkrtdd\} }t|d}n|tkr|}n|}zz tj|f|||d|Wn0| | | fD]}|durt |qւYn>0| dur t | |_ | durt | |_ | dur2t | |_W|tkrHt||tkr\t||tkrt|n>|tkrt||tkrt||tkrt|0dS)N)FTT)rr)TFr r)stdinstdoutstderr)rrmsvcrtopen_osfhandlerO_RDONLYSTDOUTsuperr rrrr:r;r<r+)rargsr:r;r<kwdsZ stdin_rfdZ stdout_wfdZ stderr_wfdZstdin_whZ stdout_rhZ stderr_rhZstdin_rhZ stdout_whZ stderr_whhr%rrr sZ                    zPopen.__init__)NNN)r&r5r6r __classcell__rrrErr}sr)sysplatform ImportErrorr itertoolsr=r subprocessr r8__all__BUFSIZErr@countrrrrrrrrs" 1,