Viewing File: /opt/alt/python35/lib64/python3.5/__pycache__/socketserver.cpython-35.opt-2.pyc



]Z`@sfdZddlZddlZddlZddlZyddlZWnek
rfddlZYnXddlm	Zdddddd	d
ddd
ddgZ
eedre
jddddgeedrej
Zn	ejZGdddZGdddeZGdddeZGdddZGdddZGdddeeZGdddeeZGdd	d	eeZGdd
d
eeZeedr#GdddeZGd ddeZGd!ddeeZGd"ddeeZGd#ddZGd$ddeZGd%d
d
eZdS)&z0.4N)	monotonic
BaseServer	TCPServer	UDPServerForkingUDPServerForkingTCPServerThreadingUDPServerThreadingTCPServerBaseRequestHandlerStreamRequestHandlerDatagramRequestHandlerThreadingMixInForkingMixInAF_UNIXUnixStreamServerUnixDatagramServerThreadingUnixStreamServerThreadingUnixDatagramServerPollSelectorc@seZdZdZddZddZdddZd	d
ZddZd
dZ	ddZ
ddZddZddZ
ddZddZddZddZdd ZdS)!rNcCs.||_||_tj|_d|_dS)NF)server_addressRequestHandlerClass	threadingEvent_BaseServer__is_shut_down_BaseServer__shutdown_request)selfrrr1/opt/alt/python35/lib64/python3.5/socketserver.py__init__s		zBaseServer.__init__cCsdS)Nr)rrrrserver_activateszBaseServer.server_activateg?cCs|jjzctS}|j|tjx6|jsg|j|}|rZ|j|j	q2WWdQRXWdd|_|jj
XdS)NF)rclear_ServerSelectorregister	selectors
EVENT_READrselect_handle_request_noblockservice_actionsset)rZ
poll_intervalselectorreadyrrr
serve_forevers

	zBaseServer.serve_forevercCsd|_|jjdS)NT)rrwait)rrrrshutdowns	zBaseServer.shutdowncCsdS)Nr)rrrrr'szBaseServer.service_actionsc
Cs|jj}|dkr'|j}n!|jdk	rHt||j}|dk	rat|}to}|j|tjxR|j	|}|r|j
S|dk	r|t}|dkr|jSqWWdQRXdS)Nr)socket
gettimeouttimeoutmintimer!r"r#r$r%r&handle_timeout)rr0deadliner)r*rrrhandle_requests"


zBaseServer.handle_requestcCsy|j\}}Wntk
r.dSYnX|j||ry|j||Wq|j|||j|YqXn
|j|dS)N)get_requestOSErrorverify_requestprocess_requesthandle_errorshutdown_request)rrequestclient_addressrrrr&,s
	z"BaseServer._handle_request_noblockcCsdS)Nr)rrrrr3@szBaseServer.handle_timeoutcCsdS)NTr)rr<r=rrrr8GszBaseServer.verify_requestcCs!|j|||j|dS)N)finish_requestr;)rr<r=rrrr9OszBaseServer.process_requestcCsdS)Nr)rrrrserver_closeXszBaseServer.server_closecCs|j|||dS)N)r)rr<r=rrrr>`szBaseServer.finish_requestcCs|j|dS)N)
close_request)rr<rrrr;dszBaseServer.shutdown_requestcCsdS)Nr)rr<rrrr@hszBaseServer.close_requestcCsPtddtdddt|ddl}|jtdddS)N-(z4Exception happened during processing of request fromend r)print	traceback	print_exc)rr<r=rFrrrr:ls

zBaseServer.handle_error)__name__
__module____qualname__r0rrr+r-r'r5r&r3r8r9r?r>r;r@r:rrrrrs -
	c@seZdZejZejZdZdZ	dddZ
ddZdd	Zd
dZ
dd
ZddZddZddZdS)rFTc	Cshtj|||tj|j|j|_|rdy|j|jWn|jYnXdS)N)rrr.address_familysocket_typeserver_bindrr?)rrrZbind_and_activaterrrrs

zTCPServer.__init__cCsN|jr%|jjtjtjd|jj|j|jj|_dS)N)allow_reuse_addressr.
setsockopt
SOL_SOCKETSO_REUSEADDRbindrgetsockname)rrrrrNs	zTCPServer.server_bindcCs|jj|jdS)N)r.listenrequest_queue_size)rrrrrszTCPServer.server_activatecCs|jjdS)N)r.close)rrrrr?szTCPServer.server_closecCs
|jjS)N)r.fileno)rrrrrYszTCPServer.filenocCs
|jjS)N)r.accept)rrrrr6szTCPServer.get_requestcCs:y|jtjWntk
r(YnX|j|dS)N)r-r.SHUT_WRr7r@)rr<rrrr;s

zTCPServer.shutdown_requestcCs|jdS)N)rX)rr<rrrr@szTCPServer.close_requestN)rHrIrJr.AF_INETrLSOCK_STREAMrMrWrPrrNrr?rYr6r;r@rrrrrzs/		

c@sUeZdZdZejZdZddZddZ	ddZ
d	d
ZdS)rFi cCs.|jj|j\}}||jf|fS)N)r.recvfrommax_packet_size)rdataZclient_addrrrrr6szUDPServer.get_requestcCsdS)Nr)rrrrrszUDPServer.server_activatecCs|j|dS)N)r@)rr<rrrr;
szUDPServer.shutdown_requestcCsdS)Nr)rr<rrrr@szUDPServer.close_requestN)rHrIrJrPr.
SOCK_DGRAMrMr_r6rr;r@rrrrrs	c@sReZdZdZdZdZddZddZdd	Zd
dZ	dS)ri,NrBcCs|jdkrdSx|t|j|jkry,tjdd\}}|jj|Wqtk
r{|jjYqtk
rPYqXqWx||jj	D]k}y/tj|tj
\}}|jj|Wqtk
r|jj|Yqtk
rYqXqWdS)NrOr)active_childrenlenmax_childrenoswaitpiddiscardChildProcessErrorr r7copyWNOHANG)rpid_rrrcollect_childrens$




zForkingMixIn.collect_childrencCs|jdS)N)rn)rrrrr3<szForkingMixIn.handle_timeoutcCs|jdS)N)rn)rrrrr'CszForkingMixIn.service_actionscCstj}|rN|jdkr-t|_|jj||j|dSy.|j|||j|tjdWn:z!|j	|||j|WdtjdXYnXdS)NrrO)
rfforkrcr(addr@r>r;_exitr:)rr<r=rlrrrr9Js 

zForkingMixIn.process_request)
rHrIrJr0rcrernr3r'r9rrrrrs"c@s.eZdZdZddZddZdS)r
Fc	CsMy!|j|||j|Wn%|j|||j|YnXdS)N)r>r;r:)rr<r=rrrprocess_request_threadjsz%ThreadingMixIn.process_request_threadcCs;tjd|jd||f}|j|_|jdS)Ntargetargs)rThreadrrdaemon_threadsdaemonstart)rr<r=trrrr9wszThreadingMixIn.process_requestN)rHrIrJrvrrr9rrrrr
cs
c@seZdZdS)rN)rHrIrJrrrrrsc@seZdZdS)rN)rHrIrJrrrrrsc@seZdZdS)rN)rHrIrJrrrrrsc@seZdZdS)r	N)rHrIrJrrrrr	sc@seZdZejZdS)rN)rHrIrJr.rrLrrrrrsc@seZdZejZdS)rN)rHrIrJr.rrLrrrrrsc@seZdZdS)rN)rHrIrJrrrrrsc@seZdZdS)rN)rHrIrJrrrrrsc@s@eZdZddZddZddZddZd	S)
r
c
CsE||_||_||_|jz|jWd|jXdS)N)r<r=serversetuphandlefinish)rr<r=rzrrrrs			
zBaseRequestHandler.__init__cCsdS)Nr)rrrrr{szBaseRequestHandler.setupcCsdS)Nr)rrrrr|szBaseRequestHandler.handlecCsdS)Nr)rrrrr}szBaseRequestHandler.finishN)rHrIrJrr{r|r}rrrrr
s
c@s@eZdZd	ZdZdZdZddZddZdS)
rrOrNFcCs|j|_|jdk	r.|jj|j|jrS|jjtjtjd|jj	d|j
|_|jj	d|j|_
dS)NTrbwb)r<
connectionr0
settimeoutdisable_nagle_algorithmrQr.IPPROTO_TCPTCP_NODELAYmakefilerbufsizerfilewbufsizewfile)rrrrr{s	
zStreamRequestHandler.setupcCsS|jjs5y|jjWntjk
r4YnX|jj|jjdS)N)rclosedflushr.errorrXr)rrrrr}s
zStreamRequestHandler.finishrb)	rHrIrJrrr0rr{r}rrrrrs
c@s(eZdZddZddZdS)rcCsGddlm}|j\|_|_||j|_||_dS)Nr)BytesIO)iorr<Zpacketr.rr)rrrrrr{szDatagramRequestHandler.setupcCs#|jj|jj|jdS)N)r.sendtorgetvaluer=)rrrrr}szDatagramRequestHandler.finishN)rHrIrJr{r}rrrrrs) __version__r.r#rferrnorImportErrordummy_threadingr2r__all__hasattrextendrr!SelectSelectorrrrrr
rrrr	rrrrr
rrrrrr<module>{sJ
	
	~Q.+
Back to Directory File Manager