�
Ϫ�f� � � � d Z ddlZddlZddlZddlZddlmZmZmZ ddl m
Z
G d� dej � Z G d� dej � Z
G d � d
ej � Z G d� dej � Z G d
� dej � Zy)z)
Implementation of the SOCKSv4 protocol.
� N)�defer�protocol�reactor)�logc �* � e Zd Zd� Zd� Zd� Zd� Zd� Zy)�SOCKSv4Outgoingc � � || _ y �N)�socks��selfr s �9/usr/lib/python3/dist-packages/twisted/protocols/socks.py�__init__zSOCKSv4Outgoing.__init__ s � ���
� c � � | j j � }| j j dd|j |j
�� | | j _ y )N�Z r )�port�ip)� transport�getPeerr � makeReplyr �host� otherConn)r
�peers r �connectionMadezSOCKSv4Outgoing.connectionMade sC � ��~�~�%�%�'���
�
���R�����t�y�y��A�#��
�
�r c �L � | j j j � y r
�r r �loseConnection�r
�reasons r �connectionLostzSOCKSv4Outgoing.connectionLost � � ��
�
���+�+�-r c �: � | j j |� y r
�r �write�r
�datas r �dataReceivedzSOCKSv4Outgoing.dataReceived! � � ��
�
����r c �r � | j j | |� | j j |� y r
�r r r r% r& |