python (3.11.7)

(root)/
lib/
python3.11/
__pycache__/
pty.cpython-311.opt-1.pyc

edZddlmZddlZddlZddlZddlmZmZddlmZmZm	Z	gdZ
dZdZdZ
dZd	Zd
ZdZdZd
ZdZeefdZeefdZdS)zPseudo terminal utilities.)selectN)closewaitpid)setraw	tcgetattr	tcsetattr)openptyforkspawnc	tjS#ttf$rYnwxYwt	\}}t|}||fS)zdopenpty() -> (master_fd, slave_fd)
    Open a pty master/slave pair, using os.openpty() if possible.)osr	AttributeErrorOSError_open_terminal
slave_open)	master_fd
slave_nameslave_fds   7/BuggyBox/python/3.11.7/bootstrap/lib/python3.11/pty.pyr	r	s`
z||G$



*,,Iz*%%Hhs))c	tj\}}tj|}tj|||fS#tt
f$rYnwxYwt
S)zmaster_open() -> (master_fd, slave_name)
    Open a pty master and return the fd, and the filename of the slave end.
    Deprecated, use openpty() instead.)rr	ttynamerrrr)rrrs   rmaster_openr&sx
% jll	8Z))

*$$
G$



sAAAcdD]M}dD]H}d|z|z}	tj|tj}n#t$rY7wxYw|d|z|zfccSNtd)z1Open pty master and return (master_fd, tty_name).pqrstuvwxyzPQRST0123456789abcdefz/dev/ptyz/dev/ttyzout of pty devices)ropenO_RDWRr)xypty_namefds    rrr6s
,,#	,	,A!A~)H
WXry11




Q*++++++
	,&
'
''s2
??ctj|tj}	ddlm}m}n#t$r|cYSwxYw	|||d|||dn#t$rYnwxYw|S)zslave_open(tty_name) -> slave_fd
    Open the pty slave and acquire the controlling terminal, returning
    opened filedescriptor.
    Deprecated, use openpty() instead.r)ioctlI_PUSHptemldterm)rrrfcntlr%r&ImportErrorr)tty_nameresultr%r&s    rrrBsWXry
)
)F'''''''''




fff%%%
ffh''''



Ms*99A
A%$A%c	tj\}}|tkr%	tjn#t$rYnwxYw||fS#t
tf$rYnwxYwt
\}}tj}|tkrtjtj|tj	|ttj	|ttj	|t|tkrtj|tj
tjttj}tj|ntj|||fS)zdfork() -> (pid, master_fd)
    Fork and make the child a session leader with a controlling terminal.)rforkptyCHILDsetsidrrr	r
rdup2STDIN_FILENO
STDOUT_FILENO
STDERR_FILENOrrr)pidr#rrtmp_fds     rr
r
Tse*,,R%<<
	



Bw
G$



"))Ix
'))C
e||
	
	,'''
-(((
-(((m##HXM22BI>>

	>s A8
AAA A c,tj|dS)zDefault read function.i)rread)r#s r_readr9|s
72tctj|rZtj|d	t|||tj|dn#tj|dwxYwdSd}|tk}|t
k}d}d}	g}g}	|r-t
||kr|t|r(t
||kr|||r-t
|dkr|	t
t
|dkr|	|t||	g\}}	}
t
|	vr8	tj	t
|}||d}n#t$rd}YnwxYw||vr(	||}n#t$rd}YnwxYw|sdS||z
}||	vrtj	||}||d}|r#t|vr|t}|sd}n||z
})	zParent copy loop.
    Copies
            pty master -> standard output   (master_read)
            standard input -> pty master    (stdin_read)F)master_read
stdin_readTNir:rr)rget_blockingset_blocking_copyr2r3lenappendrwriter)
rr<r=high_waterlevelstdin_availstdout_availi_bufo_bufrfdswfds_xfdsndatas
             rr@r@sx

y!!
		5)))	-)LLLL
OIt,,,,BOIt,,,,O|+K
-LEE*	&3u::77KK%%%	#CJJ88KK	"""	'CJJNNKK
&&&u::>>KK	""""4r22dED  
%H]E22abb	
%
%
%$
%
"{9--




TMEE**A!""IE	<4//:l++D
#
U*s/AA*$FFFF''F65F6cdt|tdkr|f}tjd|t\}}|tkrtj|dg|R	tt}ttd}n#tj$rd}YnwxYw	t||||r tttj|n(#|r!tttj|wwxYwt|t!|ddS)zCreate a spawned process.z	pty.spawnrTFr)typesysauditr
r/rexeclprr2rttyerrorr@r	TCSAFLUSHrr)argvr<r=r5rmoderestores       rrrs2DzzT"XXwIk4   VVNC
e||
	$q'!D!!!!&&|99
ij111	9lCM4888	9lCM48888	9
)3??1s.*BB-,B-1C%%%D
)__doc__rrrQrTrrrrr__all__r2r3r4r/r	rrrr
r9r@rr:r<module>r]s-  				







,,,,,,,,,,
&
&
&

	


 
(
(
($&&&P"'5????B"er: