File: //opt/alt/python35/lib/python3.5/site-packages/__pycache__/sockshandler.cpython-35.pyc
"�@Wa � @ s� d Z d d l Z y d d l Z d d l Z Wn0 e k
r` d d l j Z d d l j Z Yn Xd d l Z d d � Z
Gd d � d e j � Z Gd d � d e j
� Z Gd d
� d
e j e j � Z e d k r~d d l Z y e e j d � Z Wn e e f k
rd
Z Yn Xe j e e j d e � � Z e d e j d � j � j � � e d e j d � j � j � � d S)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...
� Nc C s | j � } | j | � | S)N)�copy�update)�a�b�d� r �/sockshandler.py�
merge_dict s
r c @ s4 e Z d Z d d d d d d � Z d d � Z d S)�SocksiPyConnectionNTc O s5 | | | | | | f | _ t j j | | | � d S)N)� proxyargs�httplib�HTTPConnection�__init__) �self� proxytype� proxyaddr� proxyport�rdns�username�password�args�kwargsr r r r s zSocksiPyConnection.__init__c C sp t j � | _ | j j | j � t | j � t t f k rP | j j | j � | j j
| j | j f � d S)N)
�socks�
socksocket�sock�setproxyr �type�timeout�int�float�
settimeout�connect�host�port)r r r r r! s
zSocksiPyConnection.connect)�__name__�
__module__�__qualname__r r! r r r r r
s r
c @ s4 e Z d Z d d d d d d � Z d d � Z d S)�SocksiPyConnectionSNTc O s5 | | | | | | f | _ t j j | | | � d S)N)r r �HTTPSConnectionr ) r r r r r r r r r r r r r '