%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/local/lib/python2.7/test/
Upload File :
Create Path :
Current File : //usr/local/lib/python2.7/test/ssl_servers.pyc

ó
Nêáac@s0ddlZddlZddlZddlZddlZddlZddlmZm	Z	ddl
mZddlm
ZejdƒZejjeƒZejZejjedƒZdefd„ƒYZd	efd
„ƒYZde	fd„ƒYZd
ejfd„ƒYZdeedd„Zedkr,ddl Z e j!ddƒZ"e"j#ddde$ddddƒe"j#ddddde%dddd ƒe"j#d!d"dd#de&dd$dd%ƒe"j#d&dd'de'dd(dd)ƒe"j#d*dd+de'dd,ƒe"j#d-dd.de'dd(dd/ƒe"j(ƒZ)e)j*e_*e)j+r\eZ,neZ,ej-ƒe,_.ej/ej0j1ƒZ2e2j3eƒe)j4r¯e2j5e)j4ƒne)j6rËe2j7e)j6ƒne)j8rçe2j9e)j8ƒned0e)j:fe,e2ƒZ;e)j*rd1j<e)ƒGHne;j=d2ƒndS(3iÿÿÿÿN(t
HTTPServertBaseHTTPRequestHandler(tSimpleHTTPRequestHandler(ttest_supportt	threadingskeycert.pemtHTTPSServercBs,eZd„Zd„Zd„Zd„ZRS(cCs tj|||ƒ||_dS(N(t_HTTPServert__init__tcontext(tselftserver_addresst
handler_classR((s,/usr/local/lib/python2.7/test/ssl_servers.pyRscCsd|jj|j|jfS(Ns
<%s %s:%s>(t	__class__t__name__tserver_nametserver_port(R	((s,/usr/local/lib/python2.7/test/ssl_servers.pyt__str__s	cCsty1|jjƒ\}}|jj|dtƒ}Wn6tk
ri}tjrctj	j
d|ƒn‚nX||fS(Ntserver_sidesGot an error:
%s
(tsockettacceptRtwrap_sockettTruetOSErrortsupporttverbosetsyststderrtwrite(R	tsocktaddrtsslconnte((s,/usr/local/lib/python2.7/test/ssl_servers.pytget_request!s	cCs#tjrtj|||ƒndS(s&Suppose noisy error output by default.N(RRRthandle_error(R	trequesttclient_address((s,/usr/local/lib/python2.7/test/ssl_servers.pyR!-s	(R
t
__module__RRR R!(((s,/usr/local/lib/python2.7/test/ssl_servers.pyRs			tRootedHTTPRequestHandlercBs,eZdZeZdZd„Zd„ZRS(s
TestHTTPS/1.0icCs¯tj|ƒd}tjjtj|ƒƒ}|jdƒ}td|ƒ}|j	}xS|D]K}tjj
|ƒ\}}tjj|ƒ\}}tjj||ƒ}q\W|S(sñTranslate a /-separated PATH to the local filename syntax.

        Components that mean special things to the local file system
        (e.g. drive or directory names) are ignored.  (XXX They should
        probably be diagnosed.)

        it/N(turlparsetostpathtnormpathturllibtunquotetsplittfiltertNonetroott
splitdrivetjoin(R	R)twordstwordtdrivethead((s,/usr/local/lib/python2.7/test/ssl_servers.pyttranslate_path<s		
cGsRtjrNtjjd|jj|jj|jj	ƒ|j
ƒ||fƒndS(Ns server (%s:%d %s):
   [%s] %s
(RRRtstdoutRtserverR
RR"tciphertlog_date_time_string(R	tformattargs((s,/usr/local/lib/python2.7/test/ssl_servers.pytlog_messagePs				(R
R$tserver_versionthereR0ttimeoutR7R>(((s,/usr/local/lib/python2.7/test/ssl_servers.pyR%2s
	tStatsRequestHandlercBs2eZdZdZed„Zd„Zd„ZRS(sSExample HTTP request handler which returns SSL statistics on GET
    requests.
    sStatsHTTPS/1.0cCsÃ|jjj}|j}i|jƒd6|jƒd6|jƒd6}tj|ƒ}|j	dƒ}|j
dƒ|jddƒ|jdtt
|ƒƒƒ|jƒ|r¿|jj|ƒnd	S(
sServe a GET request.t
session_cacheR:tcompressionsutf-8iÈsContent-typestext/plain; charset=utf-8sContent-LengthN(trfiletrawt_sockRt
session_statsR:RDtpprinttpformattencodet
send_responsetsend_headertstrtlentend_headerstwfileR(R	t	send_bodyRRtstatstbody((s,/usr/local/lib/python2.7/test/ssl_servers.pytdo_GETbs	



cCs|jdtƒdS(sServe a HEAD request.RRN(RUtFalse(R	((s,/usr/local/lib/python2.7/test/ssl_servers.pytdo_HEADtscGs#tjrtj|||ŒndS(N(RRRtlog_request(R	R<R=((s,/usr/local/lib/python2.7/test/ssl_servers.pyRXxs	(R
R$t__doc__R?RRURWRX(((s,/usr/local/lib/python2.7/test/ssl_servers.pyRB[s
	tHTTPSServerThreadcBs>eZedd„Zd„Zdd„Zd„Zd„ZRS(cCsVd|_t|df|pt|ƒ|_|jj|_tjj	|ƒt
|_dS(Ni(R/tflagRR%R9RtportRtThreadRRtdaemon(R	RthostR((s,/usr/local/lib/python2.7/test/ssl_servers.pyRs		cCsd|jj|jfS(Ns<%s %s>(RR
R9(R	((s,/usr/local/lib/python2.7/test/ssl_servers.pyRˆscCs||_tjj|ƒdS(N(R[RR]tstart(R	R[((s,/usr/local/lib/python2.7/test/ssl_servers.pyR`‹s	cCsB|jr|jjƒnz|jjdƒWd|jjƒXdS(Ngš™™™™™©?(R[tsetR9t
serve_forevertserver_close(R	((s,/usr/local/lib/python2.7/test/ssl_servers.pytruns
	cCs|jjƒdS(N(R9tshutdown(R	((s,/usr/local/lib/python2.7/test/ssl_servers.pytstop—sN(	R
R$tHOSTR/RRR`RdRf(((s,/usr/local/lib/python2.7/test/ssl_servers.pyRZ}s
			cs†|dkr$tjtjjƒ}n|j|ƒt|||ƒ‰tjƒ}ˆj	|ƒ|j
ƒ‡fd†}|j|ƒˆS(NcsPtjrtjjdƒnˆjƒtjrBtjjdƒnˆjƒdS(Nsstopping HTTPS server
sjoining HTTPS thread
(RRRR8RRfR2((R9(s,/usr/local/lib/python2.7/test/ssl_servers.pytcleanup¥s	
	(R/tssltcreate_default_contexttPurposetCLIENT_AUTHtload_cert_chainRZRtEventR`twaitt
addCleanup(tcaseRtcertfileR_RR[Rh((R9s,/usr/local/lib/python2.7/test/ssl_servers.pytmake_https_server›s



t__main__tdescriptionsERun a test HTTPS server. By default, the current directory is served.s-ps--portttypetdefaultiQthelps(port to listen on (default: %(default)s)s-qs--quiettdestRtactiontstore_falsesbe less verboses-ss--statstuse_stats_handlert
store_truesalways return stats pages--curve-namet
curve_nametstores&curve name for EC-based Diffie-Hellmans	--cipherstcipherssallowed cipher lists--dhtdh_files!PEM file containing DH parametersts'Listening on https://localhost:{0.port}gš™™™™™¹?(>R(RRiRIR+R'tBaseHTTPServerRRRtSimpleHTTPServerRttestRRt
import_moduleRR)tdirnamet__file__R@RgR2tCERTFILERR%RBR]RZR/RsR
targparsetArgumentParsertparsertadd_argumenttintRRVRNt
parse_argsR=RR|RtgetcwdR0RjRkRlRRmR~tset_ecdh_curveRtload_dh_paramsR€tset_ciphersR\R9R<Rb(((s,/usr/local/lib/python2.7/test/ssl_servers.pyt<module>sj	)"		

		
				

Zerion Mini Shell 1.0