python (3.12.0)

(root)/
lib/
python3.12/
__pycache__/
socketserver.cpython-312.opt-2.pyc

ˑelZ	dZddlZddlZddlZddlZddlZddlmZddlm	ZgdZ
eedre
jgdeedr/e
jgd	eedre
jd
dgeedr
ejZnejZGd
dZGddeZGddeZeedr
GddZGddeZGddZGddZeedrGddeeZGddeeZGdd eeZGd!d"eeZeedrOGd#d$eZGd%d&eZGd'd(eeZGd)d*eeZeedrGd+d
eeZ Gd,deeZ!Gd-d.Z"Gd/d0e"Z#Gd1d2eZ$Gd3d4e"Z%y)5z0.4N)BufferedIOBase)	monotonic)	
BaseServer	TCPServer	UDPServerThreadingUDPServerThreadingTCPServerBaseRequestHandlerStreamRequestHandlerDatagramRequestHandlerThreadingMixInfork)ForkingUDPServerForkingTCPServerForkingMixInAF_UNIX)UnixStreamServerUnixDatagramServerThreadingUnixStreamServerThreadingUnixDatagramServerForkingUnixStreamServerForkingUnixDatagramServerPollSelectorczeZdZ	dZdZdZddZdZdZdZ	dZ
d	Zd
ZdZ
dZd
ZdZdZdZdZdZy)rNcb	||_||_tj|_d|_yNF)server_addressRequestHandlerClass	threadingEvent_BaseServer__is_shut_down_BaseServer__shutdown_request)selfrrs   @/BuggyBox/python/3.12.0/bootstrap/lib/python3.12/socketserver.py__init__zBaseServer.__init__s,=,#6 'oo/"'c	yNr#s r$server_activatezBaseServer.server_activate	
	
r&c	|jj	t5}|j|tj
|jsM|j|}|jrn/|r|j|j|jsMdddd|_|jjy#1swY+xYw#d|_|jjwxYwr)r!clear_ServerSelectorregister	selectors
EVENT_READr"select_handle_request_noblockservice_actionsset)r#
poll_intervalselectorreadys    r$
serve_foreverzBaseServer.serve_forevers		
!!#	&
!"
+h!!$	(<(<=11$OOM:E..446((*11
+',D###%
+
+',D###%s#
CA9C!CCC#C:cH	d|_|jjyNT)r"r!waitr*s r$shutdownzBaseServer.shutdowns#	#'  "r&c	yr(r)r*s r$r5zBaseServer.service_actionsr,r&c	|jj}|
|j}n"|jt||j}|
t	|z}t5}|j
|tj	|j|r|jcdddS|+t	z
}|dkr|jcdddSX#1swYyxYw)Nr)socket
gettimeouttimeoutmintimer/r0r1r2r3r4handle_timeout)r#rCdeadliner8s    r$handle_requestzBaseServer.handle_requests	++((*?llG
\\
%'4<<0Gv'H

	9(dI$8$89??7+779
	9
	9*"*TV"3"Q;#'#6#6#8
	9
	9
	9
	9s&AC 2#C C  C)cB		|j\}}|j||r	|j||y|j
|y#t$rYywxYw#t$r&|j|||j
|Yy|j
|xYwr()get_requestOSErrorverify_requestprocess_request	Exceptionhandle_errorshutdown_requestr#requestclient_addresss   r$r4z"BaseServer._handle_request_noblock1s		&*&6&6&8#G^w7
$$Wn=
!!'*		

/!!'>:%%g.
%%g.s"AA	AA,BBc	yr(r)r*s r$rFzBaseServer.handle_timeoutHs		
r&c	yr<r)rQs   r$rLzBaseServer.verify_requestOs	
r&cL	|j|||j|yr()finish_requestrPrQs   r$rMzBaseServer.process_requestWs'	
	
G^4g&r&c	yr(r)r*s r$server_closezBaseServer.server_close`r,r&c,	|j|||yr()rrQs   r$rWzBaseServer.finish_requesthsF  .$?r&c(	|j|yr(
close_requestr#rRs  r$rPzBaseServer.shutdown_requestlsA7#r&c	yr(r)r^s  r$r]zBaseServer.close_requestps7r&c	tdtjtd|tjddl}|j	tdtjy)Nz(----------------------------------------)filez4Exception occurred during processing of request fromr)printsysstderr	traceback	print_exc)r#rRrSres    r$rOzBaseServer.handle_errortsH	
	f3::&
D	-
f3::&r&c|Sr(r)r*s r$	__enter__zBaseServer.__enter__sr&c$|jyr()rY)r#argss  r$__exit__zBaseServer.__exit__sr&)g?)__name__
__module____qualname__rCr%r+r:r>r5rHr4rFrLrMrYrWrPr]rOrhrkr)r&r$rrse*XG(
&:#
&9:+.
'
@$
'r&rc|eZdZ	ejZejZdZdZ	dZ
ddZdZdZ
dZdZdZd	Zd
Zy)
rFc	tj|||tj|j|j|_|r"	|j|j
yy#|jxYwr()rr%rAaddress_familysocket_typeserver_bindr+rY)r#rrbind_and_activates    r$r%zTCPServer.__init__st=D.2EFmmD$7$7$($4$46
  "$$&
!!#s A--Bc	|jrIttdr9|jjtjtj
d|jrIttdr9|jjtjtjd|jj|j|jj|_	y)NSO_REUSEADDRSO_REUSEPORT)allow_reuse_addresshasattrrA
setsockopt
SOL_SOCKETrwallow_reuse_portrybindrgetsocknamer*s r$rtzTCPServer.server_binds	
##(GKK""6#4#4f6I6I1M  WV^%DKK""6#4#4f6I6I1M,,-"kk557r&cP	|jj|jyr()rAlistenrequest_queue_sizer*s r$r+zTCPServer.server_activates!	
	
4223r&c:	|jjyr()rAcloser*s r$rYzTCPServer.server_closes	
	
r&c8	|jjSr()rAfilenor*s r$rzTCPServer.fileno	
{{!!##r&c8	|jjSr()rAacceptr*s r$rJzTCPServer.get_requestrr&c		|jtj|j	|y#t$rYwxYwr()r>rASHUT_WRrKr]r^s  r$rPzTCPServer.shutdown_requestsBA	
V^^,	
7#		s4	AAc&	|jyr()rr^s  r$r]zTCPServer.close_requests7

r&N)T)rlrmrnrAAF_INETrrSOCK_STREAMrsrrzr~r%rtr+rYrrJrPr]r)r&r$rrsX,\^^N$$K84$$$r&rcJeZdZ	dZdZejZdZdZ	dZ
dZdZy)rFi cr|jj|j\}}||jf|fSr()rArecvfrommax_packet_size)r#dataclient_addrs   r$rJzUDPServer.get_requests5 KK001E1EFkdkk"K//r&cyr(r)r*s r$r+zUDPServer.server_activater&c&|j|yr(r\r^s  r$rPzUDPServer.shutdown_requests7#r&cyr(r)r^s  r$r]zUDPServer.close_request#rr&N)
rlrmrnrzr~rA
SOCK_DGRAMrsrrJr+rPr]r)r&r$rrs5##KO0
$
r&rcNeZdZ	dZdZdZdZdddZdZd	Z	d
Z
fdZxZS)ri,N(TFblockingc	|jyt|j|jk\rX	tjdd\}}|jj|t|j|jk\rX|jjD]K}	|rdntj}tj||\}}|jj|My#t$r|jjYt$rYwxYw#t$r|jj|Yt$rYwxYw)Nr)active_childrenlenmax_childrenoswaitpiddiscardChildProcessErrorr.rKcopyWNOHANG)r#rpid_flagss     r$collect_childrenzForkingMixIn.collect_children1s0I##+d**+t/@/@@ZZA.FC((005d**+t/@/@@++002

!)ArzzEZZU3FC((005

)1((..0)6((005s04C2'AD%2#D"D"!D"%$EEEc&	|jyr(rr*s r$rFzForkingMixIn.handle_timeoutT

!!#r&c&	|jyr(rr*s r$r5zForkingMixIn.service_actions[rr&c@	tj}|rH|jt|_|jj	||j|yd}	|j
||d}	|j|tj|y#t$r|j||YEwxYw#tj|wxYw#	|j|tj|w#tj|wxYwxYw)Nrxr)rrrr6addr]rWrNrOrP_exit)r#rRrSrstatuss     r$rMzForkingMixIn.process_requestbs?'')C''/+.5D($$((-""7+	)''@F)--g6(
!?%%g~>?()--g6((sH#B8CB=:C<B==CCDD-DDDcZt||j|jy)Nr)superrYrblock_on_closer#	__class__s r$rYzForkingMixIn.server_close{s%G "!!4+>+>!?r&)
rlrmrnrCrrrrrFr5rMrY
__classcell__rs@r$rr(s>C/4!	F	$	$	)2	@	@r&rc2eZdZ	fdZdZdZdZxZS)_Threadsc^|j|jryt|
|yr()reapdaemonrappend)r#threadrs  r$rz_Threads.appends"		==
vr&cg|ddc|dd}|Sr(r))r#results  r$pop_allz_Threads.pop_allsd1gQ
r&cN|jD]}|jyr()rjoinr#rs  r$rz
_Threads.joins lln	FKKM	r&cd|D|ddy)Nc3BK|]}|js|ywr()is_alive).0rs  r$	<genexpr>z _Threads.reap.<locals>.<genexpr>sBf0A6Bsr)r*s r$rz
_Threads.reapsBBQr&)rlrmrnrrrrrrs@r$rrsCr&rceZdZ	dZdZy)
_NoThreadscyr(r)rs  r$rz_NoThreads.appendr&cyr(r)r*s r$rz_NoThreads.joinrr&N)rlrmrnrrr)r&r$rrs

r&rcBeZdZ	dZdZeZdZdZfdZ	xZ
S)r
FTc		|j|||j|y#t$r|j||Y/wxYw#|j|wxYwr()rWrNrOrPrQs   r$process_request_threadz%ThreadingMixIn.process_request_threads^	
	+8
!!'*	7g~6	7
!!'*s!'AAAAAc"	|jr#t|jdtt	j
|j||f}|j|_|jj||jy)N_threads)targetrj)rvars
setdefaultrrThreadrdaemon_threadsrrrstart)r#rRrSts    r$rMzThreadingMixIn.process_requestsl8J!!*hj9d&A&A%,n$=
?&&

Q		r&cVt||jjyr()rrYrrrs r$rYzThreadingMixIn.server_closes


r&)rlrmrnrrrrrrMrYrrs@r$r
r
s/>NN|H+r&r
ceZdZy)rNrlrmrnr)r&r$rrr&rceZdZy)rNrr)r&r$rrrr&rceZdZy)rNrr)r&r$rrrr&rceZdZy)r	Nrr)r&r$r	r	rr&r	c$eZdZejZy)rNrlrmrnrArrrr)r&r$rrr&rc$eZdZejZy)rNrr)r&r$rrrr&rceZdZy)rNrr)r&r$rrrr&rceZdZy)rNrr)r&r$rrrr&rceZdZy)rNrr)r&r$rrrr&ceZdZy)rNrr)r&r$rrrr&c&eZdZ	dZdZdZdZy)r
c||_||_||_|j	|j	|jy#|jwxYwr()rRrSserversetuphandlefinish)r#rRrSrs    r$r%zBaseRequestHandler.__init__sB,

	KKMKKMDKKMsAAcyr(r)r*s r$rzBaseRequestHandler.setuprr&cyr(r)r*s r$rzBaseRequestHandler.handlerr&cyr(r)r*s r$rzBaseRequestHandler.finishrr&N)rlrmrnr%rrrr)r&r$r
r
s 


r&r
c*eZdZ	dZdZdZdZdZdZy)rrrNFc|j|_|j%|jj|j|jr9|jjtjtjd|jjd|j|_|jdk(rt|j|_y|jjd|j|_y)NTrbrwb)rR
connectionrC
settimeoutdisable_nagle_algorithmr|rAIPPROTO_TCPTCP_NODELAYmakefilerbufsizerfilewbufsize
_SocketWriterwfiler*s r$rzStreamRequestHandler.setup$s,,<<#OO&&t||4''OO&&v'9'9'-'9'94
A__--dDMMB
==A&t7DJ11$

FDJr&c|jjs	|jj|jj|jjy#tj$rYJwxYwr()rclosedflushrAerrorrrr*s r$rzStreamRequestHandler.finish1s`zz  


  "
	



<<

sA''A=<A=)	rlrmrnrrrCrrrr)r&r$rrs+>HHG$G	r&rc&eZdZ	dZdZdZdZy)rc||_yr()_sock)r#socks  r$r%z_SocketWriter.__init__As	
r&cyr<r)r*s r$writablez_SocketWriter.writableDsr&c|jj|t|5}|jcdddS#1swYyxYwr()r
sendall
memoryviewnbytes)r#bviews   r$writez_SocketWriter.writeGs9

1
]	d;;			s	=Ac6|jjSr()r
rr*s r$rz_SocketWriter.filenoLszz  ""r&N)rlrmrnr%rrrr)r&r$rr<sJ
#r&rceZdZ	dZdZy)rcddlm}|j\|_|_||j|_||_y)Nr)BytesIO)iorrRpacketrArr)r#rs  r$rzDatagramRequestHandler.setupSs0#'<< T[T[[)
Y
r&c|jj|jj|jyr()rAsendtorgetvaluerSr*s r$rzDatagramRequestHandler.finishYs)4::..0$2E2EFr&N)rlrmrnrrr)r&r$rrOs@Gr&r)&__version__rAr1rrcrrrrEr__all__r{extendrr/SelectSelectorrrrrlistrrr
rrrr	rrrrrrr
rrrr)r&r$<module>r&svt	
"72vNNJK
69NN34r613NOP9n%,,O..OjjZ@
@F
	
82vU@U@pCtC,

%%P2v9<99<99999
69(9((Y(LN4DKOn6HOr6Kl4DKO6HO#
#
\+-+Z#N#&G/Gr&