Your IP : 18.191.147.58


Current Path : /lib64/python3.6/__pycache__/
Upload File :
Current File : //lib64/python3.6/__pycache__/telnetlib.cpython-36.opt-2.pyc

3


 \`Z�@sFddlZddlZddlZddlmZdgZdZdZe	dg�Z
e	dg�Ze	dg�Ze	dg�Z
e	d	g�Ze	dg�Ze	d
g�Ze	dg�Ze	dg�Ze	d
g�Ze	dg�Ze	dg�Ze	dg�Ze	dg�Ze	dg�Ze	dg�Ze	dg�Ze	dg�Ze	dg�Ze	dg�Ze	dg�Ze	dg�Ze	dg�Z e	dg�Z!e	dg�Z"e	dg�Z#e	dg�Z$e	dg�Z%e	dg�Z&e	d g�Z'e	d!g�Z(e	d"g�Z)e	d#g�Z*e	d$g�Z+e	d%g�Z,e	d&g�Z-e	d'g�Z.e	d(g�Z/e	d)g�Z0e	d*g�Z1e	dg�Z2e	d+g�Z3e	d,g�Z4e	d-g�Z5e	d.g�Z6e	d/g�Z7e	d0g�Z8e	d1g�Z9e	d2g�Z:e	d3g�Z;e	d4g�Z<e	d5g�Z=e	d6g�Z>e	d7g�Z?e	d8g�Z@e	d9g�ZAe	d:g�ZBe	d;g�ZCe	d<g�ZDe	d=g�ZEe	d>g�ZFe	d?g�ZGe	d@g�ZHe	dAg�ZIe	dBg�ZJe	dCg�ZKe	dDg�ZLe	dEg�ZMe	dFg�ZNe	dGg�ZOe	dg�ZPe	dg�ZQeRedH��rejSZTnejUZTGdId�d�ZVdJdK�ZWeXdLk�rBeW�dS)M�N)�	monotonic�Telnet�������������������������������	�
���
������������������ �!�"�#�$�%�&�'�(�)�*�+�,�-�.�/�0�1����PollSelectorc@seZdZddejfdd�Zdejfdd�Zdd�Zd	d
�Zdd�Z	d
d�Z
dd�Zdd�Zdd�Z
d;dd�Zdd�Zdd�Zdd�Zdd�Zdd �Zd!d"�Zd#d$�Zd%d&�Zd'd(�Zd)d*�Zd+d,�Zd-d.�Zd/d0�Zd1d2�Zd3d4�Zd<d5d6�Zd7d8�Zd9d:�Z dS)=rNrcCsht|_||_||_||_d|_d|_d|_d|_d|_	d|_
d|_d|_d|_
|dk	rd|j|||�dS)N�r)�
DEBUGLEVEL�
debuglevel�host�port�timeout�sock�rawq�irawq�cookedq�eof�iacseq�sb�sbdataq�option_callback�open)�selfrLrMrN�rZ�!/usr/lib64/python3.6/telnetlib.py�__init__�szTelnet.__init__cCs6d|_|st}||_||_||_tj||f|�|_dS)Nr)rS�TELNET_PORTrLrMrN�socketZcreate_connectionrO)rYrLrMrNrZrZr[rX�szTelnet.opencCs|j�dS)N)�close)rYrZrZr[�__del__�szTelnet.__del__cGs@|jdkr<td|j|jfdd�|r4t||�nt|�dS)NrzTelnet(%s,%s):� )�end)rK�printrLrM)rY�msg�argsrZrZr[rd�s

z
Telnet.msgcCs
||_dS)N)rK)rYrKrZrZr[�set_debuglevel�szTelnet.set_debuglevelcCs.|j}d|_d|_d|_d|_|r*|j�dS)NTrIr)rOrSrTrUr_)rYrOrZrZr[r_szTelnet.closecCs|jS)N)rO)rYrZrZr[�
get_socketszTelnet.get_socketcCs
|jj�S)N)rO�fileno)rYrZrZr[rhsz
Telnet.filenocCs4t|kr|jttt�}|jd|�|jj|�dS)Nzsend %r)�IAC�replacerdrO�sendall)rY�bufferrZrZr[�writeszTelnet.writecCs t|�}|j�|jj|�}|dkrN||}|jd|�}|j|d�|_|S|dk	r`t�|}t���}|j|tj�x�|j	�s|j
|�r�tdt|j�|�}|j�|j�|jj||�}|dkr�||}|jd|�}|j|d�|_|S|dk	rx|t�}|dkrxPqxWWdQRX|j
�S)Nr)�len�process_rawqrR�find�_time�_TelnetSelector�register�	selectors�
EVENT_READrS�select�max�	fill_rawq�read_very_lazy)rY�matchrN�n�i�buf�deadline�selectorrZrZr[�
read_until$s8



zTelnet.read_untilcCs4|j�x|js"|j�|j�q
W|j}d|_|S)NrI)rorSrxrR)rYr}rZrZr[�read_allIszTelnet.read_allcCs>|j�x$|jr,|jr,|j�|j�q
W|j}d|_|S)NrI)rorRrSrx)rYr}rZrZr[�	read_someSszTelnet.read_somecCs6|j�x$|jr,|j�r,|j�|j�q
W|j�S)N)rorS�
sock_availrxry)rYrZrZr[�read_very_eagerbs
zTelnet.read_very_eagercCs>|j�x,|jr4|jr4|j�r4|j�|j�q
W|j�S)N)rorRrSr�rxry)rYrZrZr[�
read_eagerps
zTelnet.read_eagercCs|j�|j�S)N)rory)rYrZrZr[�	read_lazy~szTelnet.read_lazycCs,|j}d|_|r(|jr(|jr(td��|S)NrIztelnet connection closed)rRrSrP�EOFError)rYr}rZrZr[ry�s
zTelnet.read_very_lazycCs|j}d|_|S)NrI)rV)rYr}rZrZr[�read_sb_data�szTelnet.read_sb_datacCs
||_dS)N)rW)rY�callbackrZrZr[�set_option_negotiation_callback�sz&Telnet.set_option_negotiation_callbackcCsXddg}�y�x�|j�r|j�}|jsj|tkr0q|dkr:q|tkrZ||j|||j<qn|j|7_qt|j�dk�r(|ttt	t
fkr�|j|7_qd|_|tkr�||j|||j<nh|tkr�d|_d|_n&|t
kr�d|_|j|d|_d|d<|j�r|j|j|t�n|jdt|��qt|j�dkr|jdd�}d|_|}|ttfk�r�|jd|tk�rrd�ptd	t|��|j�r�|j|j||�n|jjtt
|�q|t	t
fkr|jd|t	k�r�d
�p�dt|��|j�r�|j|j||�q|jjtt|�qWWn"tk
�r2d|_d|_YnX|j|d|_|j|d|_dS)NrI�rrzIAC %d not recognizedrz	IAC %s %d�DO�DONT�WILL�WONT)rP�rawq_getcharrT�theNULLrirUrnr�r�r�r��SBrV�SErWrO�NOOPTrd�ordrkr�rR)rYr}�c�cmd�optrZrZr[ro�shzTelnet.process_rawqcCsZ|js|j�|jrt�|j|j|jd�}|jd|_|jt|j�krVd|_d|_|S)NrrIr)rPrxrSr�rQrn)rYr�rZrZr[r��szTelnet.rawq_getcharcCsL|jt|j�krd|_d|_|jjd�}|jd|�||_|j||_dS)NrIr�2zrecv %r)rQrnrPrOZrecvrdrS)rYr}rZrZr[rxszTelnet.fill_rawqc
Cs.t��}|j|tj�t|jd��SQRXdS)Nr)rrrsrtru�boolrv)rYrrZrZr[r�szTelnet.sock_availcCs�tjdkr|j�dSt���}|j|tj�|jtjtj�x�x�|j�D]�\}}|j	|kr�y|j
�}Wntk
r�td�dSX|r�tj
j|jd��tj
j�qH|j	tjkrHtjj�jd�}|s�dS|j|�qHWq>WWdQRXdS)NZwin32z(*** Connection closed by remote host ***�ascii)�sys�platform�mt_interactrrrsrtru�stdinrvZfileobjr�r�rc�stdoutrm�decode�flush�readline�encode)rYr�keyZevents�text�linerZrZr[�interacts,

zTelnet.interactcCs@ddl}|j|jf�x$tjj�}|s(P|j|jd��qWdS)Nrr�)�_thread�start_new_thread�listenerr�r�r�rmr�)rYr�r�rZrZr[r�1s
zTelnet.mt_interactcCsVxPy|j�}Wntk
r*td�dSX|rDtjj|jd��qtjj�qWdS)Nz(*** Connection closed by remote host ***r�)r�r�rcr�r�rmr�r�)rY�datarZrZr[r�;szTelnet.listenercCsPd}|dd�}tt|��}x8|D]0}t||d�s"|s@ddl}|j||�||<q"W|dk	rht�|}t���}|j|tj	�x�|j
�s|j�xP|D]H}||j|j
�}|r�|j�}	|j
d|	�}
|j
|	d�|_
|||
fSq�W|dk	�r|j|�}|t�}|�s|dkr�Pnq�|j�q�WWdQRX|j�}
|
�rF|j
�rFt�dd|
fS)N�searchrr���)�rangern�hasattr�re�compilerqrrrsrtrurSror�rRrbrvrxryr�)rY�listrNr��indicesr|r~r�m�er�ZreadyrZrZr[�expectHsB






z
Telnet.expectcCs|S)NrZ)rYrZrZr[�	__enter__�szTelnet.__enter__cCs|j�dS)N)r_)rY�type�value�	tracebackrZrZr[�__exit__�szTelnet.__exit__)N)N)!�__name__�
__module__�__qualname__r^Z_GLOBAL_DEFAULT_TIMEOUTr\rXr`rdrfr_rgrhrmr�r�r�r�r�r�ryr�r�ror�rxr�r�r�r�r�r�r�rZrZrZr[r�s:7

%

H

8cCs�d}x0tjdd�r4tjddkr4|d}tjd=qWd}tjdd�rRtjd}d}tjdd�r�tjd}yt|�}Wn tk
r�tj|d�}YnXt��(}|j|�|j||dd�|j	�WdQRXdS)	Nrrz-dZ	localhostrZtcpg�?)rN)
r��argv�int�
ValueErrorr^Z
getservbynamerrfrXr�)rKrLrMZportstrZtnrZrZr[�test�s$


r��__main__)Yr�r^rtZtimerrq�__all__rJr]�bytesrir�r�r�r�r�r�ZNOPZDMZBRKZIPZAOZAYTZECZELZGAr�ZBINARYZECHOZRCPZSGAZNAMSZSTATUSZTMZRCTEZNAOLZNAOPZNAOCRDZNAOHTSZNAOHTDZNAOFFDZNAOVTSZNAOVTDZNAOLFDZXASCIIZLOGOUTZBMZDETZSUPDUPZSUPDUPOUTPUTZSNDLOCZTTYPEZEORZTUIDZOUTMRKZTTYLOCZVT3270REGIMEZX3PADZNAWSZTSPEEDZLFLOWZLINEMODEZXDISPLOCZOLD_ENVIRONZAUTHENTICATIONZENCRYPTZNEW_ENVIRONZTN3270EZXAUTH�CHARSETZRSPZCOM_PORT_OPTIONZSUPPRESS_LOCAL_ECHOZTLSZKERMITZSEND_URLZ	FORWARD_XZPRAGMA_LOGONZ
SSPI_LOGONZPRAGMA_HEARTBEATZEXOPLr�r�rHrrZSelectSelectorrr�r�rZrZrZr[�<module>$s�







































































}