Your IP : 3.142.131.51


Current Path : /opt/alt/python37/lib/python3.7/site-packages/__pycache__/
Upload File :
Current File : //opt/alt/python37/lib/python3.7/site-packages/__pycache__/sockshandler.cpython-37.pyc

B

"�@Wa�	@s&dZddlZyddlZddlZWn,ek
rLddlmZddlmZYnXddl	Z	dd�Z
Gdd�dej�ZGdd�dej
�ZGd	d
�d
ejej�Zedk�r"ddlZyeejd�ZWneefk
r�d
ZYnXe�ee	jde��Zede�d������ede�d������dS)z�
SocksiPy + urllib2 handler

version: 0.3
author: e<e@tr0ll.in>

This module provides a Handler which you can use with urllib2 to allow it to tunnel your connection through a socks.sockssocket socket, with out monkey patching the original socket...
�NcCs|��}|�|�|S)N)�copy�update)�a�b�d�r�=/opt/alt/python37/lib/python3.7/site-packages/sockshandler.py�
merge_dicts
r	c@seZdZddd�Zdd�ZdS)�SocksiPyConnectionNTc	Os*||||||f|_tjj|f|�|�dS)N)�	proxyargs�httplib�HTTPConnection�__init__)	�self�	proxytype�	proxyaddr�	proxyport�rdns�username�password�args�kwargsrrrrszSocksiPyConnection.__init__cCsPt��|_|jj|j�t|j�ttfkr8|j�	|j�|j�
|j|jf�dS)N)
�socks�
socksocket�sock�setproxyr�type�timeout�int�float�
settimeout�connect�host�port)rrrrr!s

zSocksiPyConnection.connect)NTNN)�__name__�
__module__�__qualname__rr!rrrrr
s
r
c@seZdZddd�Zdd�ZdS)�SocksiPyConnectionSNTc	Os*||||||f|_tjj|f|�|�dS)N)rr�HTTPSConnectionr)	rrrrrrrrrrrrr'szSocksiPyConnectionS.__init__cCs\t��}|j|j�t|j�ttfkr2|�|j�|�	|j
|jf�t�
||j|j�|_dS)N)rrrrrrrrr r!r"r#�sslZwrap_socketZkey_fileZ	cert_filer)rrrrrr!+szSocksiPyConnectionS.connect)NTNN)r$r%r&rr!rrrrr'&s
r'c@s$eZdZdd�Zdd�Zdd�ZdS)�SocksiPyHandlercOs||_||_tj�|�dS)N)r�kw�urllib2�HTTPHandlerr)rrrrrrr4szSocksiPyHandler.__init__csd�fdd�	}��||�S)Nrcs(t�j|�}t�j|||d�|��}|S)N)r"r#r)r	r+r
r)r"r#rrr+�conn)rrr�build:sz(SocksiPyHandler.http_open.<locals>.build)Nr)�do_open)r�reqr/r)rr�	http_open9szSocksiPyHandler.http_opencsd�fdd�	}��||�S)Nrcs(t�j|�}t�j|||d�|��}|S)N)r"r#r)r	r+r'r)r"r#rrr+r.)rrrr/Asz)SocksiPyHandler.https_open.<locals>.build)Nr)r0)rr1r/r)rr�
https_open@szSocksiPyHandler.https_openN)r$r%r&rr2r3rrrrr*3sr*�__main__�iZ#Z	localhostzHTTP: zhttp://httpbin.org/ipzHTTPS: zhttps://httpbin.org/ip) �__doc__r)r,r�ImportErrorZurllib.requestZrequestZhttp.clientZclientrr	r
r
r(r'r-ZHTTPSHandlerr*r$�sysr�argvr#�
ValueError�
IndexErrorZbuild_openerZPROXY_TYPE_SOCKS5�opener�print�open�read�decoderrrr�<module>	s*




?>