Sindbad~EG File Manager
3
�2;Za�@s"dZddlZyddlZddlZWn(ek
rHddljZddljZYnXddl Z dd�Z
Gdd�dej�ZGdd�dej
�ZGd d
�d
ejej�Zedk�rddlZyeejd�ZWneefk
r�d
ZYnXejee jde��Zedejd�j�j��edejd�j�j��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|j�}|j|�|S)N)�copy�update)�a�b�d�r�"/usr/lib/python3.6/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__cCsPtj�|_|jj|j�t|j�ttfkr8|jj |j�|jj
|j|jf�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\tj�}|j|j�t|j�ttfkr2|j|j�|j |j
|jf�tj
||j|j�|_dS)N)rrrrrrrrr r!r"r#�sslZwrap_socketZkey_fileZ cert_filer)rrrrrr!+szSocksiPyConnectionS.connect)NTNN)r$r%r&rr!rrrrr'&s
r'c@s$eZdZdd�Zdd�Zdd�ZdS)�SocksiPyHandlercOs||_||_tjj|�dS)N)r�kw�urllib2�HTTPHandlerr)rrrrrrr4szSocksiPyHandler.__init__csd�fdd� }�j||�S)Nrcs(t�j|�}t�j|||d�|��}|S)N)r"r#r)r r+r
r)r"r#rrr+�conn)rrr�build:sz(SocksiPyHandler.http_open.<locals>.build)Nr)�do_open)r�reqr/r)rr� http_open9szSocksiPyHandler.http_opencsd�fdd� }�j||�S)Nrcs(t�j|�}t�j|||d�|��}|S)N)r"r#r)r r+r'r)r"r#rrr+r.)rrrr/Asz)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-ZHTTPSHandlerr*r$�sysr�argvr#�
ValueError�
IndexErrorZbuild_openerZPROXY_TYPE_SOCKS5�opener�print�open�read�decoderrrr�<module> s*
Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists