Viewing File: /opt/alt/python35/lib64/python3.5/__pycache__/telnetlib.cpython-35.opt-2.pyc



]Y@sddlZddlZddlZddlmZdgZdZdZe	dgZ
e	dgZe	dgZe	dgZ
e	d	gZe	dgZe	d
gZe	dgZe	dgZe	d
gZe	dgZe	dgZe	dgZe	dgZe	dgZe	dgZe	dgZe	dgZe	dgZe	dgZe	dgZe	dgZe	dgZ e	dgZ!e	dgZ"e	dgZ#e	dgZ$e	dgZ%e	dgZ&e	d gZ'e	d!gZ(e	d"gZ)e	d#gZ*e	d$gZ+e	d%gZ,e	d&gZ-e	d'gZ.e	d(gZ/e	d)gZ0e	d*gZ1e	dgZ2e	d+gZ3e	d,gZ4e	d-gZ5e	d.gZ6e	d/gZ7e	d0gZ8e	d1gZ9e	d2gZ:e	d3gZ;e	d4gZ<e	d5gZ=e	d6gZ>e	d7gZ?e	d8gZ@e	d9gZAe	d:gZBe	d;gZCe	d<gZDe	d=gZEe	d>gZFe	d?gZGe	d@gZHe	dAgZIe	dBgZJe	dCgZKe	dDgZLe	dEgZMe	dFgZNe	dGgZOe	dgZPe	dgZQeRedHrejSZTn	ejUZTGdIddZVdJdKZWeXdLkreWdS)MN)	monotonicTelnet	

 !"#$%&'()*+,-./01PollSelectorc@sceZdZddejddZdejddZddZd	d
ZddZ	d
dZ
ddZddZddZ
dddZddZddZddZddZdd Zd!d"Zd#d$Zd%d&Zd'd(Zd)d*Zd+d,Zd-d.Zd/d0Zd1d2Zd3d4Zdd5d6ZdS)7rNrcCst|_||_||_||_d|_d|_d|_d|_d|_	d|_
d|_d|_d|_
|dk	r|j|||dS)Nr)
DEBUGLEVEL
debuglevelhostporttimeoutsockrawqirawqcookedqeofiacseqsbsbdataqoption_callbackopen)selfrLrMrNrZ./opt/alt/python35/lib64/python3.5/telnetlib.py__init__s													zTelnet.__init__cCsOd|_|st}||_||_||_tj||f||_dS)Nr)rSTELNET_PORTrLrMrNsocketcreate_connectionrO)rYrLrMrNrZrZr[rXs				zTelnet.opencCs|jdS)N)close)rYrZrZr[__del__szTelnet.__del__cGsT|jdkrPtd|j|jfdd|rFt||n
t|dS)NrzTelnet(%s,%s):end )rKprintrLrM)rYmsgargsrZrZr[res
 z
Telnet.msgcCs
||_dS)N)rK)rYrKrZrZr[set_debuglevelszTelnet.set_debuglevelcCsA|j}d|_d|_d|_d|_|r=|jdS)NTrIr)rOrSrTrUr`)rYrOrZrZr[r`s					zTelnet.closecCs|jS)N)rO)rYrZrZr[
get_socketszTelnet.get_socketcCs
|jjS)N)rOfileno)rYrZrZr[risz
Telnet.filenocCsFt|kr"|jttt}|jd||jj|dS)Nzsend %r)IACreplacererOsendall)rYbufferrZrZr[writeszTelnet.writecCst|}|j|jj|}|dkrk||}|jd|}|j|d|_|S|dk	rt|}t}|j|tjx|j	so|j
|rFtdt|j|}|j|j|jj||}|dkrF||}|jd|}|j|d|_|S|dk	r|t}|dkrPqWWdQRX|j
S)Nr)lenprocess_rawqrRfind_time_TelnetSelectorregister	selectors
EVENT_READrSselectmax	fill_rawqread_very_lazy)rYmatchrNnibufdeadlineselectorrZrZr[
read_until$s8






zTelnet.read_untilcCsD|jx!|js-|j|jq
W|j}d|_|S)NrI)rprSryrR)rYr~rZrZr[read_allIs

		zTelnet.read_allcCsO|jx,|jr8|jr8|j|jq
W|j}d|_|S)NrI)rprRrSry)rYr~rZrZr[	read_someSs

		zTelnet.read_somecCsE|jx.|jr:|jr:|j|jq
W|jS)N)rprS
sock_availryrz)rYrZrZr[read_very_eagerbs


zTelnet.read_very_eagercCsO|jx8|jrD|jrD|jrD|j|jq
W|jS)N)rprRrSrryrz)rYrZrZr[
read_eagerps

#
zTelnet.read_eagercCs|j|jS)N)rprz)rYrZrZr[	read_lazy~s
zTelnet.read_lazycCs<|j}d|_|r8|jr8|jr8td|S)NrIztelnet connection closed)rRrSrPEOFError)rYr~rZrZr[rzs
		zTelnet.read_very_lazycCs|j}d|_|S)NrI)rV)rYr~rZrZr[read_sb_datas		zTelnet.read_sb_datacCs
||_dS)N)rW)rYcallbackrZrZr[set_option_negotiation_callbacksz&Telnet.set_option_negotiation_callbackcCs	ddg}yx|jr|j}|js|tkr?q|dkrNq|tkrx||j|||j<qq|j|7_qt|jdkr|ttt	t
fkr|j|7_qd|_|tkr||j|||j<q|tkrd|_d|_n3|t
krMd|_|j|d|_d|d<|jro|j|j|tq|jdt|qt|jdkr|jdd}d|_|}|ttfkr:|jd|tkrdpd	t||jr|j|j||q|jjtt
|q|t	t
fkr|jd|t	krgd
pjdt||jr|j|j||q|jjtt|qWWn$tk
rd|_d|_YnX|j|d|_|j|d|_dS)NrIsrrzIAC %d not recognizedrz	IAC %s %dDODONTWILLWONT)rPrawq_getcharrTtheNULLrjrUrorrrrSBrVSErWrONOOPTreordrlrrR)rYr~ccmdoptrZrZr[rpsh				
			"		"	 
		zTelnet.process_rawqcCs}|js"|j|jr"t|j|j|jd}|jd|_|jt|jkryd|_d|_|S)NrrIr)rPryrSrrQro)rYrrZrZr[rs	
			zTelnet.rawq_getcharcCsj|jt|jkr*d|_d|_|jjd}|jd|||_|j||_dS)NrIr2zrecv %r)rQrorPrOrecvrerS)rYr~rZrZr[rys		
zTelnet.fill_rawqc
Cs=t-}|j|tjt|jdSWdQRXdS)Nr)rsrtrurvboolrw)rYrrZrZr[rszTelnet.sock_availcCs3tjdkr|jdSt}|j|tj|jtjtjxx|jD]\}}|j	|kry|j
}Wn tk
rtddSYnX|r tj
j|jdtj
jqb|j	tjkrbtjjjd}|sdS|j|qbWqUWWdQRXdS)Nwin32z(*** Connection closed by remote host ***ascii)sysplatformmt_interactrsrtrurvstdinrwfileobjrrrdstdoutrndecodeflushreadlineencode)rYrkeyeventstextlinerZrZr[interacts,


	zTelnet.interactcCsVddl}|j|jfx0tjj}|s8P|j|jdq"WdS)Nrr)_threadstart_new_threadlistenerrrrrnr)rYrrrZrZr[r1szTelnet.mt_interactcCsmxfy|j}Wn tk
r5tddSYnX|rXtjj|jdqtjjqWdS)Nz(*** Connection closed by remote host ***r)rrrdrrrnrr)rYdatarZrZr[r;s

	zTelnet.listenercCsd}|dd}tt|}xJ|D]B}t||ds/|sZddl}|j||||<q/W|dk	rt|}t}|j|tj	x|j
s|jxl|D]d}||j|j
}|r|j}	|j
d|	}
|j
|	d|_
|||
fSqW|dk	rs|j|}|t}|ss|dkrPnq|jqWWdQRX|j}
|
r|j
rtdd|
fS)Nsearchrr)rangerohasattrrecompilerrrsrtrurvrSrprrRrbrwryrzr)rYlistrNrindicesr}rrmerreadyrZrZr[expectHsB




z
Telnet.expect)__name__
__module____qualname__r^_GLOBAL_DEFAULT_TIMEOUTr\rXrarergr`rhrirnrrrrrrrzrrrprryrrrrrrZrZrZr[rs67
%

H

c
Csd}x>tjddrFtjddkrF|d}tjd=q	Wd}tjddrmtjd}d}tjddrtjd}yt|}Wn$tk
rtj|d}YnXt}|j||j||dd|j	|j
dS)	Nrrz-d	localhostrZtcprNg?)rargvint
ValueErrorr^
getservbynamerrgrXrr`)rKrLrMZportstrtnrZrZr[tests&)



	

r__main__)Yrr^rutimerrr__all__rJr]bytesrjrrrrrrZNOPZDMZBRKZIPZAOZAYTZECZELZGArZBINARYZECHOZRCPZSGAZNAMSZSTATUSZTMZRCTEZNAOLZNAOPZNAOCRDZNAOHTSZNAOHTDZNAOFFDZNAOVTSZNAOVTDZNAOLFDZXASCIIZLOGOUTZBMZDETZSUPDUPZSUPDUPOUTPUTZSNDLOCZTTYPEZEORZTUIDZOUTMRKZTTYLOCZVT3270REGIMEZX3PADZNAWSZTSPEEDZLFLOWZLINEMODEZXDISPLOCZOLD_ENVIRONZAUTHENTICATIONZENCRYPTZNEW_ENVIRONZTN3270EZXAUTHCHARSETZRSPZCOM_PORT_OPTIONZSUPPRESS_LOCAL_ECHOZTLSZKERMITZSEND_URLZ	FORWARD_XZPRAGMA_LOGONZ
SSPI_LOGONZPRAGMA_HEARTBEATZEXOPLrrrHrsSelectSelectorrrrrZrZrZr[<module>$s		
Back to Directory File Manager